Kolumny za pomocą tabel CSS
To nie mają być kolumny na tabelach HTML, tylko dowolne elementy z nadanym tabelarycznym wyglądem za pomocą CSS.
Ograniczenia
W przeciwieństwie do innych rozwiązań jest dużo mniej problemów z wysokością kolumn i łatwo jest wyrównać zawartość w pionie.
Głównym ograniczeniem jest niemożność użycia pozycjonowania absolutnego względem elementów tabel. Przez to nie da się umieścić w kolumnach zawartości jednocześnie na górze i na dole, chyba że wysokość kolumny będzie z góry narzucona.
Tworzenie kolumn
Układy dla dowolnej ilości kolumn robi się tak samo — trzeba nadać display:table-cell wszystkim elementom tworzącym kolumny oraz otoczyć wszystkie kolumny elementem
z display:table:
<div id="kolumny"><div>pierwsza kolumna</div><div>druga kolumna</div><div>trzecia kolumna</div></div>#kolumny {width:100%; display:table;}#kolumny > div {display:table-cell;}
Domyślnie tabele mają szerokość dopasowaną do zawartości (to jest inne zachowanie, niż normalnie), dlatego dobrze jest dodać width:100%.
Tekst nie mieszczący się w komórkach może powodować rozciąganie kolumn i całej tabeli. Radą na to jest określenie szerokości wszystkich komórek oraz nadanie table-layout:fixed elementowi z display:table.
Pytania? Komentarze? Napisz na forum kursu lub edytuj tę stronę.
Zmodyfikowano: 22.11.2007, 21:59
