Tabellen == Div's
Pagina: « vorige 1 2 3 4 volgende »
Fieldsets vind ik sowieso gelikt om te gebruiken, omdat het er gewoon erg mooi uit ziet, zo'n stukje text met daarom heen een mooi streepje :)
"De TS weet nu dat ie er naast zat."
>> Remember Jonathan, Leon? Hoogmoed komt voor de val. Morgen/overmogen meer.
Frank62 schreef op 18.02.2008 21:05:
Kom dan eerst maar eens met feiten en goede voorbeelden. Voorlopig heb je alle schijn tegen!Morgen/overmogen meer.
Jij begint daarnaast over Iframes in je tabel -> Ooit van SEO gehoord, daarvoor zijn frames per definitie al niet zeer geschikt. Ben wel benieuwd met wat voor dingen je nu aankomt, maar laat het feiten zijn, daar kunnen we wat mee. Tot nu toe lijkt het meer op sentimentaliteit, naar de (volgens jou!) "goede oude tabellen tijd", waarin je zelf nog een lay-out kon maken.
Ik zie dat ik mijn forms ongeveer style zoals Stu. Grappig! Wat ik bovendien nog met labels doe is dit:
label {cursor: pointer;}
Op die manier ziet de user dat je op een label kunt klikken.
En wij maar denken dat je het zelf had bedacht :P Maar stiekum van Stu. afgekeken zeker.
Zelf gebruik ik ook "jouw" manier (of die van Stu. ) om m'n formulieren op te maken. En inderdaad wel even de cursor aanpassen zodat het voor een bezoeker ook duidelijk is.
Maar goed, Stu levert ook goed werk.
Heb nooit of nooit echt met tabellen begonnen en weet nog steeds niet hoe het moet :p..
Grtz
Ik heb een vijftal argumenten genoemd waarom div's-layout niet principieel beter is dan tabellayout. Die zal ik verder uitwerken/verdedigen.
1. Er is een veel betere manier om layout en content te scheiden.
Er zijn twee principiële manieren om een layout te maken die je later makkelijk kunt veranderen: (a) geïntegreerde pagina's die bestaan uit div's + één extern stijlblad, en (b) een parentfile waarin steeds andere content wordt geladen.
In beide methodes hoef je in principe maar één bestand (hooguit een paar) te veranderen om een site van 200 pagina's in één keer een nieuwe look te geven. Maar wat als je iets aan de layout wilt toevoegen, of er iets van wilt verwijderen? Juist. Dat gaat niet met methode a. In ieder geval niet iets toevoegen. Zengarden of geen zengarden. En dat gaat wel met methode b. Verder is het verschuiven van div's (methode a) aan beperkingen onderhevig. Je kunt niet willekeurig elke andere layout maken met slechts het veranderen van een extern stijlblad.
De intelligente lezer die niet meteen op tilt slaat zal dan ook zien dat met de komst van server-side scripting includes, aangewend om content te includen, methode a een obsolete methode is geworden.
Je kunt het parentfile in method b heel goed met div's maken, maar dat hoeft maar in een paar gevallen. In veel andere gevallen kun je gewoon een tabel gebruiken, als je dat wilt. (Wel een DTD 4 Transitional zonder url gebruiken, omdat in IE anders de 'liquiditeit' van een tabellayout verloren gaat.)
2. De vraag of tabellen bedoeld zijn voor layout is irrelevant.
Hier is weinig kritiek op gekomen. Op de stupide uitlatingen van een paar pubers na, maar mensen met communicerende hersenhelften zullen gezien hebben dat de kracht van hun tegenargumenten 0,000 was. Zo ze al tegenargumenten aanvoerden.
3. Pagina's met een tabellayout worden niet significant langzamer gedownload en gerenderd dan pagina's met div's-layout.
Onder andere door "moderator" Deiman wordt dit te vuur en te zwaard bestreden. (De aanhalingstekens zijn omdat je precies het tegenovergestelde doet van wat een moderator moet doen: ongenuanceerd stelling nemen en mensen die over de schreef niet of nauwelijks excuses laten aanbieden c.q. hen niet uitsluiten.)
Maar heeft Robert Deiman ooit wel eens gekeken naar bestandsgroottes van basale layouts? Duidelijk niet, en roept hij maar wat, want de volgende twee - qua resultaat precies dezelfde - voorbeelden laten zien dat tabellayout NIET meer bytes vergt dan div's-layout:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN">
<html>
<head>
<style type="text/css">
#grandContainer {
width: 800px;
height: 500px;}
.allContainers {
float: left;
border-style: solid;
border-color: black;}
#logoContainer {
width: 150px;
height: 100px;
border-width: 1px;}
#headerContainer {
width: 647px;
height: 100px;
border-width: 1px 1px 1px 0;}
#menuContainer {
width: 150px;
height: 397px;
border-width: 0 1px 1px 1px;}
#contentContainer {
width: 647px;
height: 397px;
border-width: 0 1px 1px 0;}
</style>
</head>
<body>
<div align="center">
<div id="grandContainer">
<div class="allContainers" id="logoContainer"></div>
<div class="allContainers" id="headerContainer"></div>
<div class="allContainers" id="menuContainer"></div>
<div class="allContainers" id="contentContainer"></div>
</div>
</div>
</body>
</html>
<html>
<head>
<style type="text/css">
#grandContainer {
width: 800px;
height: 500px;}
.allContainers {
float: left;
border-style: solid;
border-color: black;}
#logoContainer {
width: 150px;
height: 100px;
border-width: 1px;}
#headerContainer {
width: 647px;
height: 100px;
border-width: 1px 1px 1px 0;}
#menuContainer {
width: 150px;
height: 397px;
border-width: 0 1px 1px 1px;}
#contentContainer {
width: 647px;
height: 397px;
border-width: 0 1px 1px 0;}
</style>
</head>
<body>
<div align="center">
<div id="grandContainer">
<div class="allContainers" id="logoContainer"></div>
<div class="allContainers" id="headerContainer"></div>
<div class="allContainers" id="menuContainer"></div>
<div class="allContainers" id="contentContainer"></div>
</div>
</div>
</body>
</html>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<style type="text/css">
table {
width: 800px;
height: 500px;
border: 1px solid black;
border-collapse: collapse;
table-layout: fixed;}
td {
border: 1px solid black;}
</style>
</head>
<body>
<center>
<table>
<tr>
<td id="logoCell" width="150" height="100"> </td>
<td id="headerCell"> </td>
</tr>
<tr>
<td id="menuCell"> </td>
<td id="contentCell"> </td>
</tr>
</table>
</body>
</html>
<html>
<head>
<style type="text/css">
table {
width: 800px;
height: 500px;
border: 1px solid black;
border-collapse: collapse;
table-layout: fixed;}
td {
border: 1px solid black;}
</style>
</head>
<body>
<center>
<table>
<tr>
<td id="logoCell" width="150" height="100"> </td>
<td id="headerCell"> </td>
</tr>
<tr>
<td id="menuCell"> </td>
<td id="contentCell"> </td>
</tr>
</table>
</body>
</html>
Uitslag: 907 bytes voor de div's, 538 voor de tabel!! En dit is een doodnormale layout!!
4. Zoekmachines indexeren pagina's met tabellayout net zo goed als met div's-layout.
Daar is in zoverre kritiek op gekomen, dat Robert Deiman hier wederom laat zien dat hij slecht op de hoogte is, als hij stelt dat SEO met iframes (die ik soms gebruik om content te 'includen') niet gaat. Google indexeert losse frames net zo goed als geïntegreerde pagina's, en er zijn meerdere manieren om te zorgen dat contenfiles altijd in het parentfile wordt getooond, één waarvan mod_rewrite.
5. Voor screenreaders is een veel mooiere oplossing dan div's-layout.
Hiervoor geldt hetzelfde als punt 2.
De lezer (met grijze massa!) oordele.
- Frank
PS: @Lode: als je geen terzake doende argumenten kunt verzinnen, ga dan lekker buiten spelen!
Edit: .htaccess => mod_rewrite
Gewijzigd op 01/01/1970 01:00:00 door Frank62
-> Wat boeit dit in een table :s , Tabel op zich wil je hier bewijzen, wat jij probeerd is het programmeren van..
Het forum is niet bedoeld voor mensen zoals jij die hun eigen meningen koste wat kost willen blijven verdedigen ondanks goede argumenten van andere forum gebruikers.
We snappen het, JIJ houdt van tables en de tables houden van jou. Congratulations.
WIJ houden van divs. (tenminste, een meerderheid hier, ik wil natuurlijk niet voor mn beurt praten)
Kunnen we er nu over ophouden alsjeblieft?
PS We snappen het, jouw IQ ligt uiteraard hoger dan die van de rest. Ook daarmee van harte gefeliciteerd. Ik hoop dat jij en je IQ heel gelukkig worden samen.
/runs
Op het moment dat je een layout met weinig divs kan realiseren lijkt mij dit dus zeker de voorkeur hebben omdat je dan geen aparte pagina voor screenreaders meer hoeft te produceren.
Dan moet je natuurlijk niet zoveel geneste divjes hebben als in jou voorbeeld, maar vaak is het ook helemaal niet nodig.
Met een tabel maak je een verband aan tussen de verschillende soorten data. Ook als er geen verband is. En dat is nu net het probleem met een layout, er zit geen verband tussen een shoppingcart en een advertentie naar een externe website. Door een tabel te gebruiken, beweer jij dat dit wel het geval is, door uitsluitend naar de html-code te kijken of de screenreader te gebruiken (die gebruikt de html-code) ga je hiermee hopeloos de mist in. Jouw bezoekers zullen 1-voor-1 vertrekken naar de andere website en jouw winkelwagentjes blijven eenzaam achter op jouw site...
Frank, je zet jezelf hier voor schut met jouw table-div-preek. Ga je eens verdiepen in de materie, duik de boeken in en ga blog's volgens van de deskundigen. Het boek Design Accessible Web Sites van Jeremy J. Sydik is een aanrader, zul jij heel veel van opsteken.
Frank62 schreef op 20.02.2008 15:25:
1. Er is een veel betere manier om layout en content te scheiden.
Wie zegt hier iets over dat je met divs alle content wel in die divs laad? Die haal je ook uit externe files natuurlijk. Het gaat puur om de lay-out bij de divs, waar positioneer ik wat, en hoe geef ik dat vorm.
Bij jou methode (ik herhaal!) KAN je niet met ALLEEN het aanpassen van de CSS je layout drastisch omgooien.
Iets aan je layout toevoegen gaat zelfs vrij eenvoudig met methode A. Net als jij kijkt in welk tabelveld dat moet komen, kijken wij in welke div. Men make een nieuwe div, geven hem de goede stijl en Voilá.
Jij beweert dat wij die met divs werken de content rechtstreeks in de div gooien, maar niets is minder waar.
[/quote]
Frank62 schreef op 20.02.2008 15:25:
Je kunt niet willekeurig elke andere layout maken met slechts het veranderen van een extern stijlblad.
Dat kan dus wél. Jij hebt het over het veranderen van de content, waarover het dus niet gaat hier. Met Dezelfde content (zie wederom csszengarden) kan je oneindig spelen, om een andere lay-out te maken. Dat bij jou de inhoud zelf onder de lay-out valt is een denkfout. Content staat IN de lay-out, maar is niet je lay-out.
Frank62 schreef op 20.02.2008 15:25:
Je kunt het parentfile in method b heel goed met div's maken, maar dat hoeft maar in een paar gevallen. In veel andere gevallen kun je gewoon een tabel gebruiken, als je dat wilt. (Wel een DTD 4 Transitional zonder url gebruiken, omdat in IE anders de 'liquiditeit' van een tabellayout verloren gaat.)
Dus jij beweert dat je beter op een oude fiets met een houten wiel kan fietsen, omdat je anders de gaten in de weg niet meer voelt. Zaken worden vernieuwd en verbeterd, maar jij weigert mee te gaan blijkbaar.
2. De vraag of tabellen bedoeld zijn voor layout is irrelevant.
Hier zijn geen tegenargumenten voor te geven inderdaad, omdat het wel werkt. Je kan ook een gewone fiets gebruiken om op te racen, maar of dat ideaal is is wat anders.
Het is voor het gebruik van tabellen voor de lay-out inderdaad niet (echt) relevant of ze daarvoor zijn bedoeld, maar normaalgesproken gebruik je dingen wel voor hetgeen ze zijn bedoeld. Waarom weiger je dat in dit geval?
Frank62 schreef op 20.02.2008 15:25:
3. Pagina's met een tabellayout worden niet significant langzamer gedownload en gerenderd dan pagina's met div's-layout.
Onder andere door "moderator" Deiman wordt dit te vuur en te zwaard bestreden. (De aanhalingstekens zijn omdat je precies het tegenovergestelde doet van wat een moderator moet doen: ongenuanceerd stelling nemen en mensen die over de schreef niet of nauwelijks excuses laten aanbieden c.q. hen niet uitsluiten.)
Onder andere door "moderator" Deiman wordt dit te vuur en te zwaard bestreden. (De aanhalingstekens zijn omdat je precies het tegenovergestelde doet van wat een moderator moet doen: ongenuanceerd stelling nemen en mensen die over de schreef niet of nauwelijks excuses laten aanbieden c.q. hen niet uitsluiten.)
Dus ongenuanceerd stelling nemen mag een mod niet tegenwoordig? Jij zal het weten, jij weet alles blijkbaar.
Maargoed, ze zijn wel degelijk aangesproken (ken je IRC?). Dus voordat je conclusies loopt te trekken, ga eerst eens na of ze wel kloppen.
Frank62 schreef op 20.02.2008 15:25:
Maar heeft Robert Deiman ooit wel eens gekeken naar bestandsgroottes van basale layouts? Duidelijk niet, en roept hij maar wat, want de volgende twee - qua resultaat precies dezelfde - voorbeelden laten zien dat tabellayout NIET meer bytes vergt dan div's-layout:
Je geeft welgeteld 1 voorbeelden. Wow, en ook van een mooie layout. Dit is de meest standaard layout die je kan bedenken, en waarbij je normaal gesproken niet eens al die divs zo plaatst als dat jij dat doet. (kan namelijk makkelijker, maar omdat je nooit met divs werkt zal dat wel lastig zijn)
Frank62 schreef op 20.02.2008 15:25:
4. Zoekmachines indexeren pagina's met tabellayout net zo goed als met div's-layout.
Dus als ik niet alleen van Google uitga bij SEO, ben ik slecht op de hoogte? Google = EEN zoekmachine, een zoekmachine != Google. Google kan wel vrij veel indexeren, en alles oppoetsen met mod_rewrite is voor jou een klein probleem blijkbaar. En lees even bij deze link:
http://www.google.com/support/webmasters/bin/answer.py?answer=34445&topic=8522
Frank62 schreef op 20.02.2008 15:25:
Daar is in zoverre kritiek op gekomen, dat Robert Deiman hier wederom laat zien dat hij slecht op de hoogte is, als hij stelt dat SEO met iframes (die ik soms gebruik om content te 'includen') niet gaat.
Google informatie Google gaat dus niet altijd goed met frames om, kennis van jou blijft hier in gebreke.Daar is in zoverre kritiek op gekomen, dat Robert Deiman hier wederom laat zien dat hij slecht op de hoogte is, als hij stelt dat SEO met iframes (die ik soms gebruik om content te 'includen') niet gaat.
Frank62 schreef op 20.02.2008 15:25:
5. Voor screenreaders is een veel mooiere oplossing dan div's-layout.
Zie reactie van Frank
Gewijzigd op 01/01/1970 01:00:00 door Robert Deiman
pgFrank schreef op 18.02.2008 21:11:
Frank62 schreef op 18.02.2008 21:05:
Kom dan eerst maar eens met feiten en goede voorbeelden. Voorlopig heb je alle schijn tegen!Morgen/overmogen meer.
@Robbert: Maak je niet druk, de ts heeft tot op heden geen voorbeelden kunnen oplepelen, blijkbaar is de rest van de wereld het niet met hem eens.
En de screenreader, dat voorbeeld is zó grappig, ik viel bijna van mijn stoel van het lachen toen ik het las!
Ik maak me verder ook niet druk, ik hou er gewoon van om op dit soort dommigheid in te gaan.
Robert_Deiman schreef op 20.02.2008 16:33:
Waar staat deze layout live? En is dat een succesvolle website?De voorbeeldlay-out die hij gaf dan? Hij heeft daar sowiezo 1 div te veel, maar het kan met nog minder ook prima.
Niet echt een lay-out dus, gewoon een beetje HTML code.