Autor Zpráva
honza.h2
Profil *
Ahoj,

dotaz je jednoduchý - lze (a pokud ano tak jak) udělat v html tabulku, kde by první řádek (názvy sloupců) byl pevně ukotven a při pohybu posuvníkem by se rolovaly jen další řádky aniž bych musel použít rámy?

docela by mě zajímalo řešení. Předem díky
BaTeCzKo
Profil
Dalo. Hlavička tabulky by byla samostatná tabulka s jedním řadkem, kdežto zbytek (data) by byly v další tabulce obalené divem s vlastností overflow. Nějak takto:



<table><tr><td><b>Jméno</b></td><td><b>Věk</b></td></tr></table>
<div style="height: 200px; overflow: auto;">
<table>
<tr><td>Franta</td><td>16</td></tr>
<tr><td>Pepa</td><td>18</td></tr>
<tr><td>Lojza</td><td>35</td></tr>
<tr><td>Dežo</td><td>120</td></tr>
atd...
</table>
</div>

MiSHAK
Profil
BaTeCzKo je na čase aby si začal číst specifikace

Jde to i bez divu, tabulka má několik logických sekcí thead, tbody takže není třeba stylovat přes <div>y
Mimo to u tvého řešení by buňky popisné neměly stejnou šířku jako datové.
honza.h2
Profil *
skvělé, díky moc
honza.h2
Profil *
MiSHAK
šlo mi jen o to jestli to jde a popř. jak. To co napsal BaTeCzKo mi naprosto stačí k pochopení jak to dělat - šířka sloupců a použití/nepoužití divu už je jen drobnost, s kterou si pohraji sám.
BaTeCzKo
Profil
MiSHAK
blabla
lojzek
Profil *
Dovolím si vytáhnout starší téma. Potřebuju udělat to, kvůli čemu to tady Honza založil, ale chtěl bych mít stejnou šířku sloupců jak v hlavičce, tak v těle tabulky. Snažil jsem se to vyřešit pomocí thead, ale nezadařilo se.
Asi bych tam mohl dát dvě tabulky a šířku sloupců nadefinovat, ale radši bych to měl co nejjednodušší. Při ladění stránky (hlavně menu) v IE6, IE7, FF a Opeře jsem si zkusil, že čím komplikovanější kód, tím víc problémů (odlišností v zobrazení) v jednotlivých prohlížečích.
Bubák
Profil
http://css.interval.cz/clanky/tabulka-se-skrolovanim/
Joker
Profil
Mmch, proč vůbec dělat dvě tabulky, nemůže být THEAD a TBODY s nastaveným overflow?
Jinak úplně nejjenodušší by asi bylo THEAD s position:fixed, akorát že to nefunguje v IE6 (pořád ještě po Firefoxu druhý nejpoužívanější prohlížeč, v dohledné době snad třetí nejpoužívanější)
sysel
Profil
Tak 11 let uplynulo, ale přes různá vylepšování html se s rolováním obsahu tabulky nic podstatného nestalo:
Lze sice nastavit samostatné skrollování pro subblok <tbody> a záhlaví či zápatí (<thead>, <tfoot>) stylováním zafixovat, ale (!)
- okamžitě se rozpojí šířky sloupců v záhlaví a zápatí s obsahem v <tbody>
- záhlaví se po vykreslení zobrazí přes první řádek obsahu
- obsah tabulky roluje přes záhlaví a mizí až pod horním okrajem okna
- nepomůžou ani pevně nastavené šířky v <col >

Obsah buňky lze pouze zalomit, ale nenašel jsem způsob, jak při nastavení maximální šířky sloupce obsah jen zkrátit (a plnou hodnotu dát např. do title bubliny).
Pokud toto někdo vyhodnotí jako nepodstatný blábol, nebudu bědovat, smaže-li to.
N71
Profil *
sysel:
s rolováním obsahu tabulky nic podstatného nestalo
Stalo. Vznikla CSS vlastnost position: sticky, podpora je už celkem dobře použitelná.
Kajman
Profil
Nepovedlo se někomu nastylovat víceřádkovou hlavičku tabulky?

Ve firefoxu se ztratí vodorovné okraje buněk v hlavičce.
Živá ukázka

V chrome se musí ukotvit až buňky, takže nejsou viditelné oba řádky.
Živá ukázka

Edit: test s border-collapse:separate
Živá ukázka

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0