Background-position

Background-position

CSS vlastnost background-position určuje umístění obrázkového pozadí.

background-position
hodnoty umístění pozadí
x y x určuje horizontální umístění pozadí, y vertikální

Příklad

background-position: right top

pozadí bude umístěné v horním pravém rohu prvku. Totéž jako

background-position: 100% 0%

Nebo totéž v ne

background-position: top right

hodnoty top a right jsou sice v nesprávném pořadí, ale protože se to zapisuje klíčovými slovy, prohlížeč to pochopí.

Více příkladů níže.

2 hodnoty: x y

Obě hodnoty se chovají stejně, je to totéž v bleděmodrém, akorát v jiném směru.

background-position: 1. hodnota
1. hodnota horizontální pozice obrázku (x) v procentech
left vlevo (levý okraj obrázku na levý okraj prvku) 0%
center uprostřed (střed obrázku na střed prvku) 50%
right vpravo (pravý okraj obrázku na pravý okraj prvku) 100%
procento procento obrázku bude zařezávat s procentem pozadí  
pixel levý okraj pozadí bude začínat několik pixelů od levého okraje prvku nelze vyjádřit

První hodnota je počítána prostě zleva doprava. Druhá hodnota je shora dolů:

background-position: 2. hodnota
2. hodnota vertikální pozice obrázku (y) v procentech
top nahoře (vršek obrázku na vršek prvku) 0%
center uprostřed (střed obrázku na střed prvku) 50%
bottom dole (spodek obrázku na spodek prvku) 100%
procento procento obrázku bude zařezávat s procentem pozadí  
pixel vršek pozadí bude začínat několik pixelů od vršku prvku nelze vyjádřit

Pixely se počítají od levého (nebo horního) okraje. Pokud je potřeba obrázek pozadí napozicovat pár pixelů od pravého okraje, to odsazení se musí přimalovat nebo použít padding.

Podpora

Všude kromě Netscape 4.

Podpora background-position
Prohlížeč Podpora ve verzích Poznámka

Internet Explorer

4, 5, 5.5, 6  
Mozilla (Netscape 6+) všechny verze  
Opera 3, 4, 5, 6, 7  
Konqueror ano  
IE 5 / Mac ano  
Netscape Navigator 4 ne pozadí zůstává vlevo nahoře

Pamatuji se, že se prohlížeče liší v tom, odkud počítají souřadný systém pozadí u prvků, které mají nastaven levý padding nebo margin, ale jsem líný to měřit a zjišťovat.

Příklady

Dejme tomu, že mám docela velký div (400x200) a v něm menší obrázek (100x100) na pozadí:

<div class="velky">
 nějaký obsah
</div>

Pomocí class nastavím velikost divu a obrázek na pozadí, který se nebude opakovat (to je to no-repeat):

<style>
.velky {widht: 400px; height: 200px; background-image: url("pozadi.gif"); background-repeat: no-repeat}
</style>

Normálně je obrázek na pozadí v levém horním rohu.

Kdybych chtěl obrázek na pozadí dát přesně na střed oddílu (divu), bude styl takovýto:

<style>
.velky {widht: 400px; height: 200px; background-image: url("pozadi.gif")}
.velky {background-position: center center}
</style>

Zatím všechno jasné. Teď začnu používat symbolická jména tříd. Střed se dá zapsat i jinak:

.stred {background-position: 50% 50%}

Pravý dolní roh:

.pravydolni {background-position: right bottom}

Pravý horní roh:

.pravyhorni {background-position: right top}

Levý dolní roh:

.levydolni {background-position: left bottom}

A další možnosti podle ciferníku:

.dvanactHodin {background-position: center top}

.triHodiny {background-position: right center}

.sestHodin {background-position: center bottom}

.devetHodin {background-position: left center}

A trocha experimentování:

.zlatyRez {background-position: 28% 28%}

Kdybych chtěl pozadí posunout z normální (levé horní) pozice o 4 pixely nahoru a o 10px doleva:

.posunuty {background-position: 10px -4px}

Další příklady:

Pozice pozadí, tabulka, pseudopozadí pozicováním

Vizte též

Background = pozadí, Background-image, Délky v CSS, Padding = vnitřní okraj, který se do pozice pozadí také započítává

Odkazy

Pozadí -- Vše o pozadí stránky a objektů v HTML a CSS

o tvorbě, údržbě a zlepšování internetových stránek

Píše Yuhů, dusan@pc-slany.cz

Hledání:

Kaskádové styly na www.jakpsatweb.cz

Píše Yuhů: http://dusan.pc-slany.cz, mail: dusan@pc-slany.cz

Poslední aktualizace 10.12.2003