Czy można łączyć wiele DIV, takich jak:
<div>
<div></div>
<div></div>
<div></div>
<div></div>
</div>
Więc wszystkie te wewnętrzne DIV mają tę samą pozycję X i Y? Domyślnie wszystkie znajdują się poniżej siebie, zwiększając pozycję Y o wysokość ostatniego poprzedniego DIV.
Mam wrażenie, że coś w rodzaju pływaka, wyświetlacza lub innej sztuczki może ugryźć?
EDYCJA: nadrzędny DIV ma pozycję względną, więc użycie pozycji bezwzględnej nie wydaje się działać.
Odpowiedzi:
Umieść zewnętrzne elementy DIV w dowolny sposób, a następnie ustaw wewnętrzne elementy DIV, używając wartości bezwzględnych. Wszystkie się ułożą.
źródło
Aby dodać do odpowiedzi Dave'a:
źródło
Jeśli masz na myśli dosłowne umieszczenie jednego na drugim, jednego na górze (te same pozycje X, Y, ale inna pozycja Z), spróbuj użyć
z-index
atrybutu CSS. To powinno działać (nieprzetestowane)Powinno to pokazać 4 na górze 3, 3 na górze 2 i tak dalej. Im wyższy indeks z, tym wyżej element jest umieszczony na osi z. Mam nadzieję, że ci to pomogło :)
źródło
style="position:absolute"
źródło
Ustawiłem elementy div z lekkim przesunięciem, abyś mógł zobaczyć, jak działa.
HTML
CSS
https://codepen.io/anon/pen/EXxKzP
źródło
Możesz teraz użyć siatki CSS, aby to naprawić.
A css do tego:
źródło
Wiem, że ten post jest trochę stary ale miałem ten sam problem i próbowałem go naprawić kilka godzin. Wreszcie znalazłem rozwiązanie:
jeśli mamy 2 pola ustawione na absolutnie
spodziewamy się, że na ekranie będzie jedno pudełko. Aby to zrobić, musimy ustawić margin-bottom równy -height, robiąc to w ten sposób:
dla mnie działa dobrze.
źródło
Miałem te same wymagania, które wypróbowałem poniżej.
https://plnkr.co/edit/XnlneRFlvo1pB92UXCC6?p=preview
źródło