Poszukuję odpowiedniej metody CSS, aby nałożyć div obrazów na inny div obrazów (nie obraz tła) bez używania position:absolute
. Czy ktoś wie, jak to zrobić?Jak nakładać obrazy bez użycia stanowiska: absolutny?
Odpowiedz
position: absolute
nie jest "niewłaściwy" - jest częścią specyfikacji CSS! Nie ma innego sposobu na umieszczanie elementów na innych elementach, chyba że będziesz się zastanawiał z position: relative
lub może niektóre właściwości float
.
position: absolute
to najprostszy sposób na zrobienie tego. Co sprawia, że myślisz, że to zły pomysł?
Jedynym rozwiązaniem jest użycie obrazu wewnątrz div z tłem, na przykład:
<div>
<img src="...">
</div>
Następnie dać div background-image
:
div
{
background: url(/images/foo.png) no-repeat;
}
Jednak dla wiele obrazów na pewno bym się trzymał position: absolute
.
Istnieje glitchy demo demonstrujący efekt.
jak wspomniano na oryginalnym wpisie, nie może zajmować się tłem w div i zgadzam się z pozycją: absolutna jest najłatwiejsza, ale nie idealna do responsywnego projektowania –
można nałożyć/pokrywać elementy na górze siebie stosując ujemny margines. przykład:
#b{
margin-left:-10px;
}
ten przesuwa element b
w lewo 10px, nakładanie co jest po lewej stronie (przy założeniu, że jest to ekran: Typ elementu bloku, nie jest wbudowany, na przykład w przedziale).
90% czasu, negatywne marże są złym pomysłem. Niektóre przeglądarki zawierają u nich błędy i nie zmieniają "przestrzeni rozłożonej" zarezerwowanej dla oryginalnego obiektu. Wiem, że OP prosił o pomysły, ale zaleciłbym, aby używali 'position: absolute;' over negative margins. – jfriend00
@ jfriend00 Zgadzam się, ale "bez użycia pozycji: absolut" jest zasadniczą częścią pytania. –
Odpowiedziałem na korzyść PO. Nie sądzę, że istnieje lepszy wybór niż pozycjonowanie bezwzględne dla nakładających się obiektów. Pomógłby, gdyby wyjaśnili, dlaczego starają się unikać pozycjonowania absolutnego. Podejrzewam, że nie rozumieją, jak używać 'position: relative' na rodzica. – jfriend00
- 1. Jak nakładać obrazy w trybie reakcji natywnej
- 2. jak scalić 2 obrazy bez użycia zestawu alpha?
- 3. Jak mogę nakładać obrazy (png) na stronie internetowej?
- 4. pozycja mPDF absolutny
- 5. Legenda tytułu stanowiska w ggplot2
- 6. Jak nakładać cień na ScrollView?
- 7. Jak napisać aplikację Windows bez użycia WinMain?
- 8. Jak łączyć funkcje bez użycia prototypu?
- 9. Jak tworzyć kawałki układanki bez użycia maski?
- 10. Jak mogę nakładać płótno na tekst?
- 11. CSS: Problem rozdzielczości absolutny ekran
- 12. Uruchamianie PHP bez rozszerzenia bez użycia mod_rewrite?
- 13. Zapytanie bez użycia skryptów dynamicznych
- 14. Zapis zapytań bez użycia pętli
- 15. Running kompozytora bez użycia sudo
- 16. globalne stałe bez użycia #define
- 17. td układanie bez użycia css
- 18. Bash: nie absolutny skrypt #! interpretator?
- 19. Wiosna MVC absolutny URL problemem
- 20. Obracanie kursora bez użycia WinForms
- 21. Podprocesowe stdin bez użycia plików
- 22. SDL rysuje obrazy niewyraźne bez skalowania
- 23. Jak nakładać div/box na mouseover?
- 24. jak nakładać się dwa div w css?
- 25. Jak nakładać kółko na mapie iOS
- 26. Jak nakładać widok na pasek kontrolera nawigacji?
- 27. Jak nakładać/umieszczać przycisk bootstrap na obrazie?
- 28. Skaluj obrazy w formacie HTML5 bez rozmycia
- 29. Czy konflikt "pozycja: absolutny z flexbox?
- 30. Obrazy siatkówki/bez siatkówki w UIImageView
Dlaczego nie możesz użyć 'position: absolute'? –
'position: absolute' w połączeniu z' position: relative' w rodzicu to bardzo dobry sposób na nakładanie się dwóch obiektów przy zachowaniu układu dla całej strony. Tworzy on samodzielny pojemnik, który można ułożyć w normalnym modelu pudełkowym HTML, ale w kontenerze używa się pozycji do tworzenia nakładania. – jfriend00
Naprawdę musisz wyjaśnić, dlaczego starasz się unikać 'position: absolute', ponieważ jest to prawdopodobnie najlepsze rozwiązanie i prawdopodobnie istnieją sposoby na rozwiązanie tego, co Cię martwi. – jfriend00