Zoals beloofd, een nieuwe draad over de vraag of tabellen principieel beter zijn dan div's, voor layout.

De volgende argumenten laten zien dat dat niet het geval is:

1. Er is een veel betere manier om layout en content te scheiden.
Div's-layout (niet te verwarren met CSS-layout want tabellen zijn ook te stijlen met CSS) is ontworpen om layout en content te scheiden, zodat men slechts één of hooguit een paar bestanden hoefde te veranderen als de site een nieuwe layout behoefde. Daarmee voorzag het in een grote behoefte, want 30 of meer pagina's op dezelfde manier verbouwen was een zeer geestdodende taak.

Echter, daar is inmiddels een nog veel mooiere methode voor ontwikkeld: server-side includes (SSI's). Met SSI's kunnen niet alleen navigatiemenu's maar ook content-files geïncludeerd worden. In gewoon Nederlands betekent dit dat men één moederpagina aanmaakt, inclusief navigatiemenu, waar telkens andere inhoud in geladen wordt. Voor de layout van zo'n moederpagina is het niet nodig om div's te gebruiken. Dan kan ook met tabellen.

Het is een illusie - zeker ingeval van geneste div's - om te denken dat met slechts het veranderen van het externe stijlblad met div's-layout elke andere layout voor de hele site bereikt kan worden. Daar zitten grote beperkingen aan.

En wat als men halverwege de 30 te maken geïntegreerde div's-pagina's (de 'oude' manier) iets wil toevoegen? Dan moet men alsnog 15 pagina's gaan aanpassen, terwijl men een div's-layout heeft...

Deze moeilijkheden gelden niet als men het systeem van server-side content includes gebruikt. De moederpagina waarvan meestal net zo goed uit een tabellayout mag bestaan.

2. De vraag of tabellen bedoeld zijn voor layout is irrelevant.
Waar het om gaat is of een methode gelijkwaardige resultaten oplevert, en of hij webmastervriendelijk is. Tabellen en div's leveren niet precies dezelfde resultaten op. In sommige gevallen kan een layout alleen met div's gemaakt worden, als men een overzichtelijke, intuïtieve code wil houden. Maar het omgekeerde geldt evenzeer.

Bovendien bestonden tabellen al ruim vóórdat div's ontworpen werden, en heeft men jarenlang layouts gemaakt met tabellen zonder dat er een haan naar kraaide.

Tot slot van dit argument zijn er twee soorten tabellen: de normale tabellen, ook geschikt voor vele layouts, en de tabellen speciaal geschikt voor tabulaire data. De laatste kenmerken zich door het opgebouwd zijn uit o.a. <thead>, <tbody>, <tfooter> en <caption>.

3. Pagina's met een tabellayout worden niet significant langzamer gedownload en gerenderd dan pagina's met div's-layout.
Verhalen over dat oude computers vastliepen op pagina's met geneste tabellen kunnen genegeerd worden, omdat er toen nog geen div's bestonden, en er geen enkele reden is om te geloven dat die computers niet net zo zeer vastgelopen zouden zijn op geneste div's.

4. Zoekmachines indexeren pagina's met tabellayout net zo goed als met div's-layout.
Voor zoekmachines zijn tabellen tabellen. Of die nu voor layout of tabulaire data gebruikt worden, de inhoud wordt net zo goed geïndexeerd en gevolgd.

5. Voor screenreaders is een veel mooiere oplossing dan div's-layout.
Een bijkomend voordeel van div's-layout t.o.v. tabellayout was dat de site sneller te lezen was met screenreaders. Echter, met de volgende methode zullen de blinden nóg gelukkiger zijn:

* Neem in de summary van de layouttabel de volgende tekst op: "Deze tabel is een layouttabel. Voor screenreaders is een aparte introductie- en navigatiepagina gemaakt. Het adres is (de URL)."
* Op die navigatiepagina, die alleen platte tekst bevat, schrijf je hoe de site is opgebouwd als dat nodig is, en geef je directe links naar de content-files, die ook weinig meer dan platte tekst hoeven te bevatten.

Er kan dus geconcludeerd worden dat de kruistocht tegen tabellen gestaakt kan worden, en dat div's-layout niet principieel beter is dan tabellayout.

- Frank
pgFrank schreef op 17.02.2008 23:42
@Jonathan: Je weet een zeldzaam laag niveau te bereiken, ik had je hoger ingeschat. Valt me tegen.

Kan ik achteraf wel begrijpen... Xcuse me...
Jan Koehoorn schreef op 17.02.2008 23:07
@TS: ik heb een uitdaging voor je. Bezoek csszengarden eens. Aan jou nu de vraag om zo'n zelfde project met tabellen te realiseren.

Prachtige site en dank je wel voor het delen hiervan!!!
Ik was hem door een format kwijt (weet nog steeds niet hoe je je favorieten kunt bewaren bij FF) maar............heb hem nu weer :-)

[edit=mod_edit]
Ik (Robert_Deiman) heb lissy een korte uitleg gegeven via PM. Niet in het topic hierop reageren aub.
[/edit]
@TS; Ik zei het toch. (kinderachtig, ik weet t, maar ik kón het niet laten)

En vertel nu gaarne eens iets over jezelf. Aantal jaren ervaring etc.?

Verder kwam mij tijdens het lezen van dit topic (waar ik smachtend op heb zitten wachten en boy, wat maakt het mijn verwachtingen waar!) dit woord in gedachten; http://nl.wikipedia.org/wiki/Tunnelvisie

Maar volgensmij heb jij nog steeds niet door dat je géén gelijk hebt wat tabellen betreft.
Volgensmij gaat dat ook nooit komen.
Misschien is het een idee om er over op te houden en voortaan niet te beginnen over tabellen in een div-topic?
Zo, nou dit topic is wel een enorm afzeik gebeuren geworden ofniet...

De TS weet nu dat ie er naast zat.

Verder erg fijne site die csszengarden.



Wat mij betreft, om verder offtopic en afzeik gelul te voorkomen, kan deze dicht?
@Leon

Hoezo topic dicht? De TS heeft de laatste reacties nog niet kunnen lezen, en anderen kunnen er evt. ook nog wat aan hebben.

Dat afzeiken was in het begin, maar tussen de regels door lees je best goede argumenten.
Wat op zich een hele leuke discussie had kunnen worden (of wordt en al bijna is) is helemaal teniet gedaan door de eerste twee reacties van Jonathan en de reactie van de TS die zich door een pubertje op laat naaien.

Jammer, totaal niet normaal op PHPhulp.nl, of waar dan ook.

Overigens snap ik niet dat dergelijke reacties getolereerd worden door het leger aan moderators die hier langskomen.
Inderdaad, een paar topicwaarschuwingen zijn dan ook niet weg hier, om het niveau wat hoog te houden, en netjes te houden.
als we het over grafisch hebben ga ik heel offtopic toch flash zeggen!

Verder mijn standpunt staat!

Veel overzichtelijker.
Overerven van eigenschappen kan het complex maken, maar scheelt nog altijd een lap met table layouts...

voor output hebben ze dingen als tidy en tidycss uitgevonden gelukkig!
niet dat ik bewust fouten maak, maar wel zo netjes en handig...

Als html input verwacht htmlpurifier.org grote lib, maar alleen nodig bij invoer dus geen ramp, maar wel zo veilig!
Elwin schreef op 18.02.2008 11:20
Wat op zich een hele leuke discussie had kunnen worden (of wordt en al bijna is) is helemaal teniet gedaan door de eerste twee reacties van Jonathan en de reactie van de TS die zich door een pubertje op laat naaien.

Jammer, totaal niet normaal op PHPhulp.nl, of waar dan ook.

Overigens snap ik niet dat dergelijke reacties getolereerd worden door het leger aan moderators die hier langskomen.


Leon Kunst schreef op 18.02.2008 11:23
Inderdaad, een paar topicwaarschuwingen zijn dan ook niet weg hier, om het niveau wat hoog te houden, en netjes te houden.


Geheel mee eens jongens, beiden hebben er ook wel van gehoord. Toch is de keuze gemaakt ze niet te verwijderen. Gelieve verder weer ontopic te gaan.
hier hebben we ook dagelijks de discussie :)
Tables of DIVS
4 programmeurs gaan voor DIV
3 voor Tables :)

Reageren