Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML] Div w divie
r_mag13
post
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 1
Dołączył: 3.03.2009

Ostrzeżenie: (0%)
-----


Jest pewna rzecz która zawsze mnie zastanawiała w divach.
Dlaczego jak włożę diva(nazwijmy go div1) w diva(div2), nadam im obramowanie, a następnie wypełnię jakąś treścią diva2, to div1 jest taki wąziutki na górze strony, a div2 wyłazi poza div1? Nie mogę tego pojąć. Przecież jak coś jest w czymś, to to coś też powinno się rozszerzyć.

Byłbym wdzięczny za radę jak tego uniknąć, lub link do jakiegoś artykułu który porusza ten problem.

Ten post edytował r_mag13 7.03.2009, 01:48:03
Go to the top of the page
+Quote Post
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




A jak wlozysz foliowe torbe do szuflady to czy przyjmuje jej rozmiary? Nie...
Tak sie nie dzieje i tyle i nie ma na to kursu bo wystarczy logiczne myslenie. Poprostu. Nie ma w divie 1 tresc ktora by ro rozpychala (badz innych ustawien) to sie nie powieksza.

Poza tym o divach masz dobry kurs http://kurs.browsehappy.pl

Ten post edytował wookieb 7.03.2009, 06:52:38
Go to the top of the page
+Quote Post
r_mag13
post
Post #3





Grupa: Zarejestrowani
Postów: 26
Pomógł: 1
Dołączył: 3.03.2009

Ostrzeżenie: (0%)
-----


Wcale nie jestem pewny czy to dobry przykład (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Może jeżeli przyjmiemy ze szuflada się rozciąga, w zależności od zawartości, to jeżeli wpakujemy tam reklamówkę z ziemniakami, to ta reklamówka nie wyjdzie poza szufladę prawda? Jeżeli wpakujemy tam drugą reklamówkę z ziemniakami to szuflada się rozciągnie i dalej żadna z reklamówek nie wyjdzie poza szufladę... A divy wcale tak nie działają...
Zwłaszcza, że jeżeli napisze jedną literkę pod divem2, to div1 magicznie rozciąga się na diva 2 i na tą literke... czyli jak napisze literke to on diva2 wewnątrz traktuje jako treść, ale jeżeli literki zabraknie to to już nie jest treść...

Cytat
Nie ma w divie 1 treść która by ro rozpychała (bądź innych ustawień) to się nie powiększa.

Jak to nie ma treśi która by go rozpychała? A div2 z tekstem?
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Pokaż CSS.
Go to the top of the page
+Quote Post
r_mag13
post
Post #5





Grupa: Zarejestrowani
Postów: 26
Pomógł: 1
Dołączył: 3.03.2009

Ostrzeżenie: (0%)
-----


Kod
body {
         color: black;
         margin: 0;
         padding: 0;
         font-family: 'Arial';
     }
    
     #main {
        
         width: 800px;
         margin: auto;
         padding: 0;
         border-style: solid;
         border-width: 1px;
         border-color: red;
     }
    
     #naglowek {
         height: 150px;
         padding: 0;
         margin:0;
         border-style: solid;
         border-width: 1px;
     }
    
     #tresc {
         border-style: solid;
         border-width: 1px;
         border-color: gold;
         padding: 0;
         margin:0;
     }
    
     #menu {
         border-style: solid;
         border-width: 1px;
         float: left;
         width: 130px;
         padding: 0;
         margin:0;
     }
    
     #tekst {
         border-style: solid;
         border-width: 1px;
         width: 650px;
         float:right;
     }
    
     #stopka {
         font-size: 8pt;
         text-align: center;
         padding: 0;
         margin:0;
         width: 800px;
         background-color: olive;
         float: left;
     }


Przy takim css strona wygląda tak:
(IMG:http://img22.imageshack.us/img22/9452/strona.gif)

Jej kod wygląda tak:
  1. <div id="main"> <!-- czerwone obramowanie (według mnie powinno obejmować całą strone) -->
  2. <div id="naglowek">
  3. Tytuł
  4. </div>
  5. <div id="tresc"> <!-- złote obramowanie (według mnie powinno obejmować 2 poniższe divy) -->
  6. <div id="menu">
  7. <ul>
  8. <li>LINK</li>
  9. <li>LINK</li>
  10. <li>LINK</li>
  11. </ul>
  12. </div>
  13. <div id="tekst">
  14. TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT
  15. TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT
  16. TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT
  17. TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT
  18. TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT
  19. TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT
  20. </div>
  21. </div>
  22. <div id="stopka">
  23. Copyright &copy; 2009 by r_mag13
  24. </div>
  25. </div>
  26. </body>
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Wg Ciebie powinno, ale:
Kod
#tekst {
         border-style: solid;
         border-width: 1px;
         width: 650px;
         float:right; /*(IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) !!!!!!!!!*/
     }
    
     #stopka {
         font-size: 8pt;
         text-align: center;
         padding: 0;
         margin:0;
         width: 800px;
         background-color: olive;
         float: left; /*(IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) !!!!!!!!!!!*/
     }

poczytaj, co trzeba zrobić z rodzicem, aby obiekty z opływaniem nie wylewały się z rodzica.
Go to the top of the page
+Quote Post
wookieb
post
Post #7





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Cytat
A div2 z tekstem?

Jezu a jak napisales?
Cytat
Dlaczego jak włożę diva(nazwijmy go div1) w diva(div2), nadam im obramowanie, a następnie wypełnię jakąś treścią diva2,

Czyli
Kod
<div> (div2)
<div>(div1)
</div>
dfsgsdfgasdgr
</div>


I linku to kolega nie przeczytal.
Tuż po zamkniecie diva #tekst daj
Kod
<div style="clear: both;"></div>
Go to the top of the page
+Quote Post
r_mag13
post
Post #8





Grupa: Zarejestrowani
Postów: 26
Pomógł: 1
Dołączył: 3.03.2009

Ostrzeżenie: (0%)
-----


No tak faktycznie namieszałem z tymi numerami. Sory mój błąd. A linka powolutku analizuje. Jak skończę i dalej nie będzie działało to się odezwę, narazie dzięki.

Cytat
Tuż po zamkniecie diva #tekst daj
Kod
<div style="clear: both;"></div>


No tak tylko że z tego co wiem to dosyć nieeleganckie rozwiązanie...
Go to the top of the page
+Quote Post
wookieb
post
Post #9





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Cytat(r_mag13 @ 7.03.2009, 13:45:15 ) *
No tak tylko że z tego co wiem to dosyć nieeleganckie rozwiązanie...

Kto ci tak powiedział?
Go to the top of the page
+Quote Post
erix
post
Post #10





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Bo jest nieeleganckie, gdyż dodajesz tag, który nie ma żadnego semantycznego znaczenia. Idealne byłoby tu dodanie odpowiedniego elementu :after po kontenerze (w IE też jest to do zrobienia), ale IMHO w tej konkretnej sytuacji wystarczyłoby dodanie overflow: hidden dla rodzica.
Go to the top of the page
+Quote Post
r_mag13
post
Post #11





Grupa: Zarejestrowani
Postów: 26
Pomógł: 1
Dołączył: 3.03.2009

Ostrzeżenie: (0%)
-----


Udało się. Wydaje mi się że przekombinowałem z ilością div-ów w kodzie oraz za bardzo namieszałem w CSS. Dałem po prostu jeden div, a w nim 4 inne odpowiadające za nagłówek, treść itd... i działa jak chciałem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Dzięki za pomoc
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.12.2025 - 08:15