CSS - DIV középre, eltolással.
Két z-indexes divet szeretnék a lap közepétől X pixellel jobbra (+ X pixel) illetve balra (- X pixel) elhelyezni css-sel. A szülő tag a body.
Amivel eddig próbálkoztam a left tulajdonság 50%-ra állítása, majd marginnal eltolni.
#div1 {
position:absolute;
left:50%;
margin-left: 490px;
top:205px;
width:109px;
height:259px;
z-index:1;
}
Ez nem igazán működik jól, átméretezéskor is elcsúsznak dolgok.
Elég sokat vacakoltam vele, végül írtam egy js függvényt ami pozícióba teszi őket, de nem szívesen hagynám így.
Hogyan lehetne ezt elegánsan, CSS-ből megoldani?
Köszi a tippeket.
■ Amivel eddig próbálkoztam a left tulajdonság 50%-ra állítása, majd marginnal eltolni.
#div1 {
position:absolute;
left:50%;
margin-left: 490px;
top:205px;
width:109px;
height:259px;
z-index:1;
}
Ez nem igazán működik jól, átméretezéskor is elcsúsznak dolgok.
Elég sokat vacakoltam vele, végül írtam egy js függvényt ami pozícióba teszi őket, de nem szívesen hagynám így.
Hogyan lehetne ezt elegánsan, CSS-ből megoldani?
Köszi a tippeket.
HTML
-55px
, mert a szélessége109px
, annak pedig55px
a fele, és pont ennyivel kell balra tolni, hogy középen legyen. Azért mert aleft
a bal oldalát állítja be a doboznak, azaz balról középen kezdődik.position: relative;
megoldódott, köszi a tipeket
Poetro, nem középre akartam igazítani, hanem a vertikális középvonaltól X pixellel jobbra illetve balra.
Endyl, ez jó kis tömör megoldás lenne, tetszik a css, de nekem a két div így egymás felett/alatt jelenik meg (Firefox 3.6), és az fontos lenne, hogy a két div egymással egy szintben legyen. Próbáltam kibővíteni a css-ed egy top tulajdonsággal, de ez sem segített.
Float
A jobb oldalinak pedig: float:right;
De ha absolute-ra van pozicionálva a két DIV, és a szülő DIV (vagy maga a BODY) relative, akkor egymásra kerülnek. Ekkor eltolhatod őket a két irányba a marginnal. (Ahogy Poetro példájában is láthatod.)