Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][CSS] Divy
Forum PHP.pl > Forum > Przedszkole
b4rt3kk
Witam, mam sobie taki przykładowy układ strony:

  1. <div id=kontener> // Kontener
  2.  
  3. <div id=menu>menu</div>
  4.  
  5. <div id=srodek>srodek</div>
  6.  
  7. </div>


W jaki sposób opisać to w css, żeby kontener rozszerzał się wraz z rozszerzaniem divów wewnątrz niego? Daje height: auto, to jest na wysokość 1px, daje, height 100% to jest to wysokość na 100% body, a jak tekst jest dłuższy, to kotener i tak się nie poszerza. Proszę o pomoc. Znaczy wydłuża, a nie poszerza, ale wiadomo o co chodzi. smile.gif
CuteOne
  1. #kontener{ width: 500px; background: blue}
  2.  
  3. #menu{ height: 150px; width: 500px; background: red}
  4.  
  5. #srodek{ width: 500px; background: green }
b4rt3kk
U mnie wygląda to tak:

  1. #kontener {
  2. overflow: visible;
  3. width: 848px;
  4. background-color: black;
  5. border-left: 1px solid white;
  6. border-right: 1px solid white;
  7. border-bottom: 1px solid white;
  8. margin-bottom: 20px;
  9. }
  10.  
  11. #menu_lewe {
  12. float: left;
  13. width: 140px;
  14. text-align: left;
  15. }
  16.  
  17. #srodek {
  18. float: left;
  19. width: 568px;
  20. text-align: left;
  21. }
  22.  
  23. #menu_prawe {
  24. float: right;
  25. width: 140px;
  26. text-align: left;
  27. }


Pozbawienia kontenera atrybutu height daje tylko i wyłącznie to, że całkowicie zanika, tak w ogóle to ma on nadawać tylko i wyłącznie tło i ramkę. Więc to co napisałeś nic nie pomogło.
kapuch
Taki "blad" powstaje gdy stosujemy floaty.
Aby temu zaradzic wystarczy na samym koncu div kontener, wstawic np takie cos:
  1. <div style="clear:both;"></div>

Wtedy div kontener, bedzie automatycznie przybieral wysokosc divow, ktore sa wewnatrz kontenera.
Czyli tak:
  1. <div id=kontener> // Kontener
  2.  
  3. <div id=menu>menu</div>
  4.  
  5. <div id=srodek>srodek</div>
  6.  
  7. <div style="clear:both;"></div>
  8.  
  9. </div>
b4rt3kk
Niestety, dalej nic, nie pomogło. ;/
cniak
  1. <div id=kontener> // Kontener
  2.  Kazdy div musi posiadac jakis tekst, mozesz wpisac sztuczna spacje, np. & n b s p ; (usuń odstepy miedzy czerwonymi literami (& i ; tez!)
  3. <div id=menu>menu
  4. <div class="clear"></div>
  5. </div>
  6.  
  7. <div id=srodek>srodek
  8. <div class="clear"></div></div>
  9.  
  10. <div class="clear"></div>
  11. </div>


css:
  1. .clear {
  2. content: ".";
  3. clear: both;
  4. }
kapuch
Cytat(b4rt3kk @ 4.11.2010, 19:28:55 ) *
Niestety, dalej nic, nie pomogło. ;/

U mnie dziala - specjalnie wkleilem ten kod jeszcze raz i div kontener ma wysokosc rowna z divami wewnatrz, takze mozliwe ze nie uzywasz prawidlowego !DOCTYPE
Np. takiego.
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
  2. ...itd...

nic innego do glowy mi nie przychodzi - u mnie jest dobrze, wiec jesli wszystko zrobiles prawidlowo, wedlug wskazowek, ktore ci podano, to u ciebie tez musi byc ok.
Zobacz z tym doctype...

BTW. Musisz powiekszyc nieco (5-10px) szerokosc kontenera, bo prawe menu sie nie miesci i zjezdza na dol.
b4rt3kk
Dziękuję problem rozwiązany, jednak przyczyną było nie wyczyszczenie położenia divów, a raczej brak pustego znaku w stopce, po tym juz dziala idealnie smile.gif
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.