Oto rozwiązanie, które w końcu wymyśliłem, używając div jako kontenera na dynamiczne tło.
- Usuń
z-index
dla zastosowań innych niż tło.
- Usuń
left
lub right
dla kolumny o pełnej wysokości.
- Usuń
top
lub bottom
dla wiersza o pełnej szerokości.
EDYCJA 1: Poniższy CSS został edytowany, ponieważ nie wyświetlał się poprawnie w FF i Chrome. przeniósł position:relative
się na HTML i ustawił na body height:100%
zamiast na min-height:100%
.
EDYCJA 2: Dodano dodatkowe komentarze do CSS. Dodano więcej instrukcji powyżej.
CSS:
html{
min-height:100%;/* make sure it is at least as tall as the viewport */
position:relative;
}
body{
height:100%; /* force the BODY element to match the height of the HTML element */
}
#cloud-container{
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
overflow:hidden;
z-index:-1; /* Remove this line if it's not going to be a background! */
}
HTML:
<!doctype html>
<html>
<body>
<div id="cloud-container"></div>
</body>
</html>
Czemu?
html{min-height:100%;position:relative;}
Bez tego DIV kontenera chmurowego jest usuwany z kontekstu układu HTML. position: relative
zapewnia, że DIV pozostanie wewnątrz pola HTML, gdy zostanie narysowany, tak że bottom:0
odnosi się do dolnej części pola HTML. Możesz także użyć height:100%
w kontenerze w chmurze, ponieważ teraz odnosi się on do wysokości znacznika HTML, a nie do rzutni.
html
elemencie trzeba użyć minimalnej wysokości (a nie tylko wysokości) . Dlaczego?height
oznacza „jesteś taki wysoki; Nie więcej i nie mniej.' Co oznacza, że będzie to wysokość rzutni. Chcemy, aby była co najmniej tak wysoka jak rzutnia lub wyższa.min-height
robi to ładnie.<html>
i pozycjonowanie do rzutni to dwie osobne rzeczy. Dziękuję Ci!W HTML5 najłatwiej jest to zrobić
height: 100vh
. Gdzie „vh” oznacza wysokość rzutni okna przeglądarki. Reaguje na zmianę rozmiaru przeglądarki i urządzeń mobilnych.źródło
vw
.Miałem podobny problem i rozwiązaniem było zrobienie tego:
Chciałem div z wycentrowaną stroną o wysokości 100% wysokości strony, więc moim całkowitym rozwiązaniem było:
Może być konieczne utworzenie elementu nadrzędnego (lub po prostu „body”)
position: relative;
źródło
cloud-container
?Możesz oszukiwać za pomocą Faux Columns Lub możesz użyć sztuczek CSS
źródło
To proste przy użyciu tabeli:
Kiedy wprowadzono DIV, ludzie tak bardzo bali się stołów, że biedny DIV stał się metaforycznym młotem.
źródło
Użyj pozycji bezwzględnej. Zauważ, że nie w ten sposób jesteśmy przyzwyczajeni do używania pozycji bezwzględnej, która wymaga ręcznego układania elementów lub swobodnych okien dialogowych. Spowoduje to automatyczne rozciągnięcie po zmianie rozmiaru okna lub zawartości. Uważam, że wymaga to trybu standardów, ale będzie działać w IE6 i nowszych wersjach.
Wystarczy zamienić div z id „thecontent” z treścią (podana wysokość jest tylko dla ilustracji, nie trzeba określać wysokości rzeczywistej zawartości.
Działa to tak, że zewnętrzny div działa jako punkt odniesienia dla paska nawigacyjnego. Zewnętrzny div jest rozciągnięty przez treść div „content”. Pasek nawigacyjny wykorzystuje pozycjonowanie bezwzględne, aby rozciągnąć się na wysokość swojego elementu nadrzędnego. Dla wyrównania w poziomie dokonujemy przesunięcia div zawartości o tę samą szerokość paska nawigacyjnego.
Jest to znacznie łatwiejsze dzięki modelowi CSS3 Flex Box, ale nie jest to jeszcze dostępne w IE i ma swoje własne dziwactwa.
źródło
Wpadłem na ten sam problem co ty. Chciałem zrobić
DIV
jako tło, ponieważ, ponieważ łatwo manipulować div za pomocą javascript. W każdym razie trzy rzeczy, które zrobiłem w css dla tego div.CSS:
źródło
Jeśli celujesz w bardziej nowoczesne przeglądarki, życie może być bardzo proste. próbować:
jeśli potrzebujesz na 50% strony, zamień 100 na 50.
źródło
Chcę objąć całą stronę internetową przed wyświetleniem modalnego wyskakującego okienka. Próbowałem wielu metod przy użyciu CSS i Javascript, ale żadna z nich nie pomogła, dopóki nie wymyślę następującego rozwiązania. To działa dla mnie, mam nadzieję, że to też pomoże.
Powodzenia ;-)
źródło
źródło
źródło
Proste, po prostu zawiń to w div tabeli ...
HTML:
CSS:
źródło