Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [html][css]Pozioma lista grafiki z paskiem przesuwania
Forum PHP.pl > Forum > Przedszkole
b_chmura
Witam

W zamiarach kod powinien tworzyć poziomą listę miniatur jednak jak widzicie linia miniatur załamuj się i leci w dół.
Jeśli odkomentuję width: 9000px; efekt jest pożądany jednak ja potrzebuję opcji bez podawania szerokości na sztywno (po prostu jest ona zmienna) wiecie jak temu zaradzić? próbowałem z width: auto; ale nie poskutkowało.

  1. <head>
  2. </head>
  3. div.value { background: yellow; height: 255px; width: 90%; overflow: auto; border: solid 0px #BFBFBF; border-top-width: 1px;}
  4. div.worklist { background: red; position: relative; height: 235px; !important width: auto;}
  5. div.artwork { background: blue; width: 520px; height: 215px; border: solid 1px #BFBFBF; margin: 10px; float: left;}
  6. </style>
  7. <body>
  8. <strong>Przyklad jak to wyglada:</strong>
  9. <div class="value">
  10. <div class="worklist">
  11. <div class="artwork"></div>
  12. <div class="artwork"></div>
  13. <div class="artwork"></div>
  14. <div class="artwork"></div>
  15. <div class="artwork"></div>
  16. <br style="clear: both;" />
  17. </div>
  18. </div>
  19. <br /><br />
  20. <strong>A jak powinno wygladać (tyle, ze bez stałej szerokosci diva czerwonego "worklist"):</strong>
  21. <div class="value">
  22. <div class="worklist" style="width: 9000px;">
  23. <div class="artwork"></div>
  24. <div class="artwork"></div>
  25. <div class="artwork"></div>
  26. <div class="artwork"></div>
  27. <div class="artwork"></div>
  28. <br style="clear: both;" />
  29. </div>
  30. </div>
  31. </body>
  32. </html>


EDIT:
Zaktualizowałem kod. Przykład on-line niżej.
thek
Jesli miniaturki mają względnie stałą szerokość to nadaj elementowi blokowemu je zawierającemu stała szerokość, float:left i na koniec wszystkich miniaturek, ale wewnątrz bloku rodzica, dodaj element blokowy z clear:both. W efekcie ilość miniaturek dopasuje się do szerokości rodzica. Ważne byś nie zapomniał dodać tego elementu z clear na końcu bo Ci się layout rozjedzie.
Czyli coś takiego:
  1. <div id="rodzic">
  2. <div class="kontener_miniaturki"></div>
  3. <div class="kontener_miniaturki"></div>
  4. <div class="kontener_miniaturki"></div>
  5. <div class="kontener_miniaturki"></div>
  6. <div class="kontener_miniaturki"></div>
  7. <span class="clear"></span>
  8. </div>

Gdzie style to:

Kod
div.kontener_miniaturki {
width: jakaś szerokość;
float:feft;
}

span.clear {
display:block;
clear:both;
}


EDIT: Jako że miniatury mają z reguły także w miarę stały zakres wysokości i szerokości (skalowanie obrazków), można użyć stałej wysokości i szerokości kontenera miniaturki, przez co powinny się one ładnie wyświetlać w bloczkach podobnych do komórek tabelki smile.gif Do tego dorzuć coś dla pseudoklasy hover i będziesz miał naprawdę fajny efekt.
b_chmura
Niestety. Miniaturki (kontenery w których będą miniaturki) wciąż przenoszą się do nowej linii.

EDIT:
Dodaję przykład on-line: http://www.informel.pl/~bchmura/exaple/example.html
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.