Maja Miarecka Frontend Developer
Temat: ostylowanie elementu listy - co lepsze?
Zalozmy ze mamy poziome menu. Wiadomo robi sie je lista nieuporzadkowana. By default elementy wyswietlaja sie jeden pod drugim. Zeby ulozyc je obok siebie zawsze uzywalam display: inline; jednak w wiekszosci tutoriali i porad jest uzyte float: left/right;. Osobiscie nie lubie float, bo w zaleznosci od tego czym jest element otoczony,zdarza sie, ze trzeba uzywac wlasciwosci clear, zeby reszta layoutu wyswietlala sie poprawnie.Bede wdzieczna za info, co jest lepsze, bardziej zgodne ze standardami w tej sytuacji.
Andrzej
Winnicki
Frontend Architect,
Developer &
Magician
Temat: ostylowanie elementu listy - co lepsze?
float left ;) i tak, trzeba potem zrobic clear'a. Naturalna sprawa.Co do standardow, obydwa sa zgodne, kwestia tego z czym sie czujemy lepiej. Ale z tego co pamietam, IE mialo glupie problemy jak sie robilo inline (divy zdaje sie), i robilo spacje, ktora trzeba bylo w dziwne sposoby usuwac.
Jskis czas temu walczylem z menu poziomym, ktore mialo miec dynamiczne wielkosci, zaleznie od jezyka, po wielu kombinacjach, CSSowych i JSowych, skonczylem z najzwyklejsza na swiecie TABELKA, ktora jako jedyna dziala jak trzeba i robila to, co miala robic ;)
Rafał Krupiński .koder
Temat: ostylowanie elementu listy - co lepsze?
Andrzej Winnicki:
float left ;) i tak, trzeba potem zrobic clear'a. Naturalna sprawa.
A jeśl elementy menu muszą być wyśrodkowane, jak tekst? Trzeba się przeprosić z inline (ew. inline-block);
Co do standardow, obydwa sa zgodne, kwestia tego z czym sie czujemy lepiej. Ale z tego co pamietam, IE mialo glupie problemy jak sie robilo inline (divy zdaje sie), i robilo spacje, ktora trzeba bylo w dziwne sposoby usuwac.
Np wypluwać html'a bez białych znaków pomiędzy elementami listy.
Jskis czas temu walczylem z menu poziomym, ktore mialo miec dynamiczne wielkosci, zaleznie od jezyka, po wielu kombinacjach, CSSowych i JSowych, skonczylem z najzwyklejsza na swiecie TABELKA, ktora jako jedyna dziala jak trzeba i robila to, co miala robic ;)
Faaak :)
Andrzej
Winnicki
Frontend Architect,
Developer &
Magician
Temat: ostylowanie elementu listy - co lepsze?
rafał krupiński:IE nie wie co to jest inline-block, niestety.
A float vs inline vs tabela vs cokolwiek innego, to tylko i wylacznie kwestia potrzeb. Nie mozna powiedziec ze float bedzie uniwersalny do wszystkiego co chcemy zrobic. norma.
Temat: ostylowanie elementu listy - co lepsze?
Znaczy sie jeszcze jest inna opcja jak używasz float a nie chcesz po nim dawać kolejnego elementu, to jeszcze możne elementowi nadrzędnemu nadać overflow: hidden;http://jsfiddle.net/EpABs/Michał Szaniewski edytował(a) ten post dnia 09.10.11 o godzinie 17:02
Maja Miarecka Frontend Developer
Temat: ostylowanie elementu listy - co lepsze?
No dobra, ale podsumowujac w uzywaniu display nie ma nic zlego i to w sumie kwestia potrzeb/przyzwyczajen a nie jakis zasad, o ktorych nie wiem.
Andrzej
Winnicki
Frontend Architect,
Developer &
Magician
Temat: ostylowanie elementu listy - co lepsze?
Michał Szaniewski:
Znaczy sie jeszcze jest inna opcja jak używasz float a nie chcesz po nim dawać kolejnego elementu, to jeszcze możne elementowi nadrzędnemu nadać overflow: hidden;
http://jsfiddle.net/EpABs/
Czlowiek sie uczy cale zycie! ;)
Krzysztof Tomasz
Jasiak
multimedia, grafika,
internet, IT -
chętnie spróbuje
nowy...
Temat: ostylowanie elementu listy - co lepsze?
ano uczy... podobna zabawka może też Wam się przydahttp://jsbin.com/#javascript,html,live
Adam
Pawliczek
Programista Web
Developer, Devesoft
Software Development
...
Temat: ostylowanie elementu listy - co lepsze?
Andrzej Winnicki:Wie, ale nie do końca:
IE nie wie co to jest inline-block, niestety.
http://foohack.com/2007/11/cross-browser-support-for-i...
Inline-block jest zdecydowanie bezpieczniejsze i robi mniej problemów niż float.
Łukasz Kliś Front-end developer
Temat: ostylowanie elementu listy - co lepsze?
Michał Szaniewski:
Znaczy sie jeszcze jest inna opcja jak używasz float a nie chcesz po nim dawać kolejnego elementu, to jeszcze możne elementowi nadrzędnemu nadać overflow: hidden;
http://jsfiddle.net/EpABs/
Wszystko fajnie dopóki nie musisz robić nawigacji z dropdownami. ;)
Jarosław P. Hand Coding Service
Temat: ostylowanie elementu listy - co lepsze?
ul:after { content: ""; display: block; overflow: hidden; clear: both; height: 0; } i wtedy bez overflowa
Andrzej
Winnicki
Frontend Architect,
Developer &
Magician
Temat: ostylowanie elementu listy - co lepsze?
Jarosław P.:I sie zaczyna jazda bo IE6 i IE7 nie wie co to :after :)
ul:after { content: ""; display: block; overflow: hidden; clear: both; height: 0; } i wtedy bez overflowa
Łukasz Kliś Front-end developer
Temat: ostylowanie elementu listy - co lepsze?
Andrzej Winnicki:
Jarosław P.:I sie zaczyna jazda bo IE6 i IE7 nie wie co to :after :)
ul:after { content: ""; display: block; overflow: hidden; clear: both; height: 0; } i wtedy bez overflowa
Od czego to mamy IE8.js? :D
Rafał Krupiński .koder
Temat: ostylowanie elementu listy - co lepsze?
Andrzej Winnicki:
Jarosław P.:I sie zaczyna jazda bo IE6 i IE7 nie wie co to :after :)
ul:after { content: ""; display: block; overflow: hidden; clear: both; height: 0; } i wtedy bez overflowa
http://nicolasgallagher.com/micro-clearfix-hack/
Piotr
L.
projektowanie user
experience,
interakcji,
architektura i...
Temat: ostylowanie elementu listy - co lepsze?
Łukasz Kliś:
Andrzej Winnicki:
Jarosław P.:I sie zaczyna jazda bo IE6 i IE7 nie wie co to :after :)
ul:after { content: ""; display: block; overflow: hidden; clear: both; height: 0; } i wtedy bez overflowa
Od czego to mamy IE8.js? :D
Ale po co ? Wystarczy ów overflow: hidden elementu UL o którym wspomniał Michał Szaniewski a LI floatujemy i problem z głowy. Z tego co pamiętam, to, żeby overflow: hidden: działał w IE6 to potrzeba nadać elementowi UL hasLayout (np. ustawiając mu szerokość - blok menu zajmuje zazwyczaj i tak całą szerokość strony). UL {overflow: hidden; } UL LI { float: left; } działa poprawnie we wszystkich znanych mi przeglądarkach.Piotr L. edytował(a) ten post dnia 10.10.11 o godzinie 15:31
Oskar
Wróbel
Front-End Developer,
Allegro.pl
Temat: ostylowanie elementu listy - co lepsze?
Moim zdaniem powinno się używać display: inline-block - dokładnie po to, to powstało :)Jak zależy komuś na IE <= 7 to może dla tej przeglądarki dać float.
Clearowanie za pomocą overflow: hidden, ewentualnie jak pozycjonujemy coś absolutnie to jakiś clearfix z :after
clear: left/right/both to ostateczność, ale staram się robić wszystko, żeby go nie stosować :)
