Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CSS][HTML]Optymalne rozlozenie divów
Forum PHP.pl > Forum > Przedszkole
lepmajster
Jak uzyskac taki efekt, aby nie przesadzac z ilosci divow (kontenerow) ?

http://img337.imageshack.us/f/img337/3317/szablon.jpg
Nie chodzi mi o gotowca, tylko o sposob w jaki mozna taki efekt osiagnac?
Dodam ze taki szablon mam juz zrobiony na divach, tylko ze do uzyskania takiego efektu, musialem uzyc kilku dodatkowych divów-pojemnikow, dla kolejnych divow.
Zrobilem to tak:
1. div logo
2. div kontener, w nim znajduja sie kolejne divy/okienka (menu) z lewej stronu, ma float: left.
3. div kontener-srodek, znajduje sie w nim okno srodkowe i nad nim ten cienki pasek - przylepiony jest do lewego menu.
4. To wszystko powyzej zapakowalem w kolejnego diva, ktory ma float: left i do niego przelepione jest to menu z prawej strony.
5. Stopka z clear:both;
6. a calosc umiescilem w divie z ustawionym width, zeby przy zmianie wielkosci okna, divy nie rozjezdzaly sie.

Wszystko niby dobrze, ale jak popatrze w kod i na to zagniezdzenie divow, to mam watpliwosci, czy nie da sie zrobic tego lepiej/prosciej?

Prosze o wskazowki, moga byc napisane w ptk, tak jak ja to zrobilem, bo gotowca mi nie trzeba, tylko pomysl smile.gif
pedro84
A pokaż może kod jaki masz? Będzie lepiej odnieść się do tego co już zrobiłeś i zasugerować poprawki ;-)
lepmajster
Ostrzegam ze zabola oczy smile.gif
Mialem to poprawic, ale dopiero jesli okaze sie ze ten sposob jest dobry, teraz nie ma sensu tego poprawiac, bo pewnie i tak bede musial od poczatku to robic.
  1. <div id="calosc">
  2. <div class="kontener" id="lewaStronaZoknem">
  3. <div class="logo">
  4. <!--TU LOGO -->
  5. </div>
  6. <div class="kontener" id="lewaMenu">
  7. <div class="menu cienLewa">
  8. <!--TU OKIENKO Z LINKAMI/TEKSTEM -->
  9. </div>
  10. <div class="menu cienLewa">
  11. <!--TU OKIENKO Z LINKAMI/TEKSTEM -->
  12. </div>
  13. <div class="menu cienLewa">
  14. <!--TU OKIENKO Z LINKAMI/TEKSTEM -->
  15. </div>
  16. </div>
  17. <div class="kontener" id="srodek">
  18. <div class="okno" id="pasekReklama">
  19. <!--TU CIENKI PASEK NAD GLOWNYM/SRODKOWYM OKNEM -->
  20. </div>
  21. <div class="okno">
  22. <!--TU SRODKOWE OKNO Z TRESCIA -->
  23. </div>
  24. </div>
  25. </div>
  26. <div class="kontener" id="prawaStrona">
  27. <div class="menu cienPrawa" id="panel">
  28. <!--TU OKIENKO Z LINKAMI/TEKSTEM - PRAWA STRONA -->
  29. </div>
  30. <div class="menu cienPrawa">
  31. <!--TU OKIENKO Z LINKAMI/TEKSTEM - PRAWA STRONA -->
  32. </div>
  33. </div>
  34. <div class="stopka">
  35. <!--TU STOPKA -->
  36. </div>
  37. </div>

no i css
  1. <style type="text/css">
  2. body {
  3. background: #000000 url(grad.gif) repeat-x;
  4. margin: 0px;
  5. padding: 0px;
  6. }
  7. .logo {
  8. overflow: hidden;
  9. margin: 0px 5px 10px 5px;
  10. padding: 0px;
  11. border: 1px solid #333333;
  12. width: 882px;
  13. height: 100px;
  14. background: #000000 url(logo.gif) center no-repeat;
  15. }
  16. .okno {
  17. overflow: hidden;
  18. margin: 0px 5px 10px 5px;
  19. padding: 5px 10px 10px 10px;
  20. border: 1px solid #333333;
  21. width: 680px;
  22. height: auto;
  23. background: #000000;
  24. }
  25. .stopka {
  26. clear: left;
  27. overflow: hidden;
  28. margin: 0px 5px 10px 5px;
  29. padding: 5px 10px 10px 10px;
  30. border: 1px solid #333333;
  31. width: 1044px;
  32. height: auto;
  33. background: #000000;
  34. }
  35. .menu {
  36. overflow: hidden;
  37. margin: 0px 5px 10px 5px;
  38. padding: 5px;
  39. border: 1px solid #333333;
  40. width: 160px;
  41. height: auto;
  42. background: #000000;
  43. }
  44. /* GRADIENT W MENU PO BOKACH
  45. .cienLewa {
  46. background: #000000 url(grad_prawa.gif) repeat-y left;
  47. }
  48. .cienPrawa {
  49. background: #000000 url(grad_lewa.gif) repeat-y right;
  50. }
  51. */
  52. .kontener {
  53. border: 0px solid red;
  54. width: auto;
  55. height: auto;
  56. margin: 0px;
  57. padding: 0px;
  58. float: left;
  59. }
  60. #calosc {
  61. width: 1090px;
  62. height: auto;
  63. margin: 0px auto;
  64. border: 0px;
  65. }
  66. </style>


Nie odpowiadam za stan zdrowia psychicznego po przeczytaniu tego posta smile.gif
A tak powaznie, wiem ze jest namieszane, ale nie o to tu chodzi, chodzi o ogolne zalozenie czy jest dobre?
Czy takim sposobem nalezy to zrobic, czy jest lepszy?
pedro84
Generalnie mogłoby zostać, tylko... Czemu nie zrobisz sobie takich kontenerów dla bocznych kolumn i nie zrobisz bloków na liście?
lepmajster
Cytat(pedro84 @ 27.05.2010, 14:11:03 ) *
Generalnie mogłoby zostać, tylko... Czemu nie zrobisz sobie takich kontenerów dla bocznych kolumn i nie zrobisz bloków na liście?

Moze i to byl by najlepszy pomysl, ale listy teraz uzywam do linkow w menu.
Nie wiem czy to by sie nie gryzlo?
Chyba ze zle Cie zrozumialem :/

PS. Czy ten div id="calosc", musi miec okreslona szerokosc, czy moze jakos inaczej daloby sie przytrzymac pozostale divy, tak zeby przy mniejszym oknie nie zjezdzaly w dol.
Chodzi o to, ze przy jakiej kolwiek zmianie szerokosci diva menu, trzeba tez edytowac tego diva calosc winksmiley.jpg
Oczywiscie pozycjonowanie absolutne odpada smile.gif

Tak czy siak, dzieki za info smile.gif
Chociaz wiem, ze w miare dobrze to robie.
pedro84
Cytat(lepmajster @ 27.05.2010, 14:14:57 ) *
Moze i to byl by najlepszy pomysl, ale listy teraz uzywam do linkow w menu.
Nie wiem czy to by sie nie gryzlo?
Chyba ze zle Cie zrozumialem :/

Zrozumiałeś smile.gif Generalnie masz ok, ja robię taki bloku kolumn na listach, bardziej semantyczny kod, ale i divy są ok.

Cytat(lepmajster @ 27.05.2010, 14:14:57 ) *
PS. Czy ten div id="calosc", musi miec okreslona szerokosc, czy moze jakos inaczej daloby sie przytrzymac pozostale divy, tak zeby przy mniejszym oknie nie zjezdzaly w dol.
Chodzi o to, ze przy jakiej kolwiek zmianie szerokosci diva menu, trzeba tez edytowac tego diva calosc winksmiley.jpg
Oczywiscie pozycjonowanie absolutne odpada smile.gif

Generalnie, zawsze nadaję swoim kontenerom stałą szerokość + min-width: na ~1024px. Generalnie, 1024x768 jest minimalną rozdzielczością jaką biorę pod uwagę (oczywiście zależy od statystyk strony!).

Cytat(lepmajster @ 27.05.2010, 14:14:57 ) *
Tak czy siak, dzieki za info smile.gif
Chociaz wiem, ze w miare dobrze to robie.

Nie ma za co smile.gif
lepmajster
Cytat(pedro84 @ 27.05.2010, 14:42:37 ) *
Generalnie, zawsze nadaję swoim kontenerom stałą szerokość + min-width: na ~1024px. Generalnie, 1024x768 jest minimalną rozdzielczością jaką biorę pod uwagę (oczywiście zależy od statystyk strony!).

Faktycznie o tym nie pomyslalem, musze zmienic rozmiar okna z 1080px do 1024px, ale to juz nie problem winksmiley.jpg
Dzieki za rady, o takie wlasnie mi chodzilo smile.gif

Pozdrawiam i mozna zamknac.
pedro84
Cytat(lepmajster @ 27.05.2010, 16:46:25 ) *
Faktycznie o tym nie pomyslalem, musze zmienic rozmiar okna z 1080px do 1024px, ale to juz nie problem winksmiley.jpg
Dzieki za rady, o takie wlasnie mi chodzilo smile.gif

Pozdrawiam i mozna zamknac.

Na laptopie pracujesz jak widzę, mam ten sam ból. Jeśli używasz FF może użyć dodatko Web Developer, masz w nim min. możliwość zmiany rozmiaru okna (nawet definiowania własnych parametrów).
lepmajster
Cytat(pedro84 @ 27.05.2010, 16:51:24 ) *
Na laptopie pracujesz jak widzę, mam ten sam ból. Jeśli używasz FF może użyć dodatko Web Developer, masz w nim min. możliwość zmiany rozmiaru okna (nawet definiowania własnych parametrów).

Tak na lapku pracuje, ale to 1080px wzielem raczej tak na chybil trafil winksmiley.jpg Na lapku uzywam 1280x800px, ale moj blad ze zupelnie zapomnialem o rozdzielczosciach, bo chyba rozdzielczosci 1080px nawet nie ma :/
Ale to jak pisalem, szczegol, odejmnie sie troche ze srodka smile.gif
FF takze uzywam, ale o tym dodatku nie slyszalem i zaraz go zainstaluje, jedyne dodatki typowo "webmasterskie" jakie mam w FF to :
- Firebug (sprawa oczywista)
- ColorZilla (fajna wtyczka, nakierowujesz myszka na dany element na stronie, a ona pokazuje wszystko co chcesz - kolor, rozmiar, id, itp, bez potrzeby grzebania w zrodle strony. Przydatne jesli swoj szablon opierasz na czyms juz istniejacym winksmiley.jpg )
- MeasureIt (podobny do ColorZilla, tyle ze mniej funkcjonalny)
Pozdrawiam

EDIT: Zainstalowalem i...cos pieknego! Dzieki za to info smile.gif Fajnie miec wszystko pod reka winksmiley.jpg
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.