Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [css]Szerokość divów, dwa dynamiczne i jeden stały
kamil_lk
post
Post #1





Grupa: Zarejestrowani
Postów: 325
Pomógł: 33
Dołączył: 31.05.2008

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


Cześć.
Staram się zrobić aby div po lewej i po prawej rozciągały się do pozostałej części ekranu gdy środkowy ma szerokość 960px.
Jak na razie to mam coś takiego
  1. <div style="overflow: hidden;">
  2. <div style="width: 150px; float: right; background: blue;">niebieski</div>
  3. <div style="width: 150px; float: right; background: green;">zlelony</div>
  4. <div style="margin-right: 300px; background: yellow;">zolty</div>
  5. </div>


i to działa w ten sposób że div żółty dopasowuje się do okna gdy niebieski i zielony ma ustaloną wartość.
W jaki sposób zrobić aby żółty i niebieski dopasowywały się automatycznie?

Ten post edytował kamil_lk 25.08.2011, 21:40:27
Go to the top of the page
+Quote Post
kamil4u
post
Post #2





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

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


http://jsfiddle.net/g7bKP/

  1. #main{ width: 100%; overflow: hidden; }
  2.  
  3. #blue{ width: 50%; margin-right: -200px; float: left; background: blue; }
  4. #green{ width: 400px; float: left; background: green; }
  5. #yellow{ width: 50%; margin-right: -200px; float: left; background: yellow; }


200px to połowa z 400px (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
kamil_lk
post
Post #3





Grupa: Zarejestrowani
Postów: 325
Pomógł: 33
Dołączył: 31.05.2008

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


Siema.

Odświeże trochę temat (IMG:style_emoticons/default/smile.gif)

Kod, który podał kamil4u działa przy uzupełnieniu divów kolorami, natomiast gdy zastosuję ten sam kod, bez tła dla diva środkowego to widać, że div z lewej strony wchodzi pod diva, aż do środka ekranu.

Wie ktoś jak to naprawić, aby ten div rozciągał się tylko do określonej szerokości?
Go to the top of the page
+Quote Post
Arcioch
post
Post #4





Grupa: Zarejestrowani
Postów: 324
Pomógł: 110
Dołączył: 18.09.2012

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


Jeżeli chcesz zrobić aby te divy były równo a nie podchodziły pod siebie musisz to zrobić a pomocą js i zmieniać szerokość bocznych divów w zależności od zmiany okna przeglądarki.

Czyli robisz to mniej więcej w ten sposób.

  1.  
  2. $(function() {
  3. function sprawdzRozmiarOkna() {
  4. var okno_width = $(window).width();
  5. var left_and_right = (okno_width-960)/2;
  6. $('div.left, div.right').css({"width" : left_and_right});
  7. }
  8. sprawdzRozmiarOkna();
  9. $(window).resize(sprawdzRozmiarOkna)
  10. });
  11.  
  12. div.left{
  13. display: block;
  14. position: absolute;
  15. top: 0;
  16. left: 0;
  17. height: 100%;
  18. background: red;
  19. }
  20.  
  21. div.right{
  22. display: block;
  23. position: absolute;
  24. top: 0;
  25. right: 0;
  26. height: 100%;
  27. background: red;
  28. }
  29.  
  30. div.center{
  31. display: block;
  32. margin: 0 auto;
  33. width: 960px;
  34. height: 400px;
  35. background: green;
  36. }
  37.  
  38. <div class="left"></div>
  39. <div class="center"></div>
  40. <div class="right"></div>


Oczywiście wymaga to dopracowania i dołaczenia biblioteki jQuery.
Pisane bez testów ale powinoo działać.
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: 20.12.2025 - 15:47