Autor Zpráva
Suta
Profil
Prosím o radu, jestli postupuju správně.

Pořebuji vystředit absolutně pozicovaný div s určitou šířkou na střed stránky. Aby bylo jasné proč, uvedu příklad:

1. Na stránce používám otvírání "nových oken". Nová okna jsou absolutně pozicované divy s určitou (vždy jinou) šířkou a výškou, které vložím do stránky (v kombinaci s javascriptem po překrytí - znedostupnění - okolního obsahu)

UPOZORNĚNÍ: text na obrázku je pouze ilustrační, s tímto tématem a problémem tedy nesouvisí...



2. Po dynamickém vložení takovéhoto divu do stránky (tagu body) přepočítám jeho rozměry a vystředím jej javascriptem na střed. Problém přichází při zvětšení okna prohlížeče. Můžu samozřejmě udělat funkci, která mi při každém zvětšení/zmenšení okna opět daný div vystředí, snažím se to však udělat pouze pomocí css. JAK?

3. Absolutně pozicovaný prvek s danou šířkou zkrátka jednoduše nevystředím. Jediné řešení, které mě napadlo je vytvořit nejprve absolutně pozicovaného rodiče, toho roztáhnout přes celou šířku prohlížeče a teprve do něj pak vkládat můj div s určitou šířkou, který pak pomocí margin: auto vystředím na střed stránky (prohlížeče) a při zvětšení/zmenšení okna tak zůstane vždy uprostřed...

Je řešení v bodě 3. chybné? Díky za rady a připomínky.
Yur4Y
Profil
Ak máš šírku definovanú, môžeš použiť nasledovné:
position: absolute;
left: 50%;
margin-left: -Xpx;
Kde X je polovica šírky elementu (nezabudni, že k vlastnosti width sa pripočítavajú aj pravé a ľavé paddingy a bordery), nezabudnúť na mínusko. Toto riešenie spočíva v tom, že element sa posunie zľava do polovice stránky a následne sa o polovicu viditeľnej šírky posunie naspäť.
Podobne sa dá vycentrovať vertikálne pomocou vlastností top a margin-top.
Suta
Profil
Yur4Y:
Přesně co jsem potřeboval, díky moc.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0