Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: nakładanie 2 divów wewnątrz innego diva
Forum PHP.pl > Forum > Po stronie przeglądarki
Avatarus
witam
Jak nałożyć na siebie 2 divy wewnątrz innego diva

  1. <div class="glowny">
  2. <div class="a"></div>
  3. <div class="b"></div>
  4. </div>

Z tym że nie mozna tego zrobić na absolute bo nie wiem gdzie na stronie pojawi się ten element.
Div główny może się pojawić w różnych podstronach w różnym miejscu.
Div A będzie dynamicznym tłem, a Div B będzie tekstem informacyjnym.
Wszystko pod kontrolą js.

Tylko nie wiem jak w CSS nałożyć te 2 divy na siebie.
thek
A to nie możesz określić, że class glowny ma position:relative, a pozostałe, czyli "a" i "b" się względem niego pozycjonują absiolutnie? Tak to się zazwyczaj rozwiązuje. Wtedy nie ma znaczenia gdzie się class="glowny" pojawi, gdyż "a" i "b" i tak się względem "główny" pozycjonują, a nie głównego okna. Te same parametry w pozycjonowaniu absolutnym i dodatkowo warstwa tekstowa musi być przezroczysta (background-color:transparent), by przebijała spod niej warstwa tła.
Avatarus
no tak właśnie to zrobiłem.
Byłem pewny że jak dam absolute wewnątrz diva to on i tak będzie wyświetlany absolutnie względem strony a nie nadrzędnego diva.
thek
To chcesz go absolutnie względem całego okna czy tylko diva o klasie glowny? Bo jeśli to pierwsze to żaden, ale to kategorycznie żaden element zawierający te divy nie może być pozycjonowany! Position:absolute pozycjonuje się bowiem według najbliższego w hierarchii elementu, który nie ma pozycjonowania static. Wystarczy, że pradziadek lub dziadek ma relative czy absolute a z automatu stanie się dla "a" i "b" on punktem odniesienia. Innymi słowy pomiędzy body a div z klasami a lub b nie może się znajdować w drzewku żaden pozycjonowany, bo przejmie on rolę kontenera dla nich. Stąd właśnie jeśli dasz do klasy glowny position:relative, to on będzie służył za kontener. Usuń z niego position:relative, by a oraz b się pozycjonowały według innego, który będzie im najbliższy. Jeśli nic nie będzie po drodze - udało Ci się - ustawiłeś im absolute dla body.
Avatarus
juz działa,
Nie wiedziałem o tym dziedziczeniu position i relative dla główne, cenna wiadomość, dzięki
thek
To nie jest dziedziczenie smile.gif Dziedziczenie to jest wtedy, gdy potomkowie mają te same ustawienia co przodek. Przykład masz choćby z td i table... To co ustawisz w table odziedziczą tr i td jako potomkowie tabeli. Position się nie dziedziczy. Position inne niż static stanowi jedynie "blokadę" dla absolute, które takiego przodka uważa za granicę swojego obszaru działalności (no chyba, że top, left, right lub bottom ustawisz wartościami ujemnymi winksmiley.jpg )
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.