<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Frontaal.net &#187; html | Frontaal.net</title>
	<atom:link href="http://frontaal.net/tag/html/feed/" rel="self" type="application/rss+xml" />
	<link>http://frontaal.net</link>
	<description>Front-end basics over markup, CSS en toegankelijkheid</description>
	<lastBuildDate>Thu, 24 May 2012 00:17:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Zes tips voor gebruiksvriendelijke links</title>
		<link>http://frontaal.net/200901/zes-tips-voor-gebruiksvriendelijke-links/</link>
		<comments>http://frontaal.net/200901/zes-tips-voor-gebruiksvriendelijke-links/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 08:42:08 +0000</pubDate>
		<dc:creator>Roger</dc:creator>
				<category><![CDATA[Gebruiksvriendelijkheid]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[markup]]></category>
		<category><![CDATA[Toegankelijkheid]]></category>

		<guid isPermaLink="false">http://frontaal.net/?p=11</guid>
		<description><![CDATA[Zonder links zou internet niet bestaan. Links zijn essentieel voor je website. Maar ook voor zoekmachines. En zeker voor bezoekers. En dan niet alleen links naar de website toe, maar ook links op de site zelf. Toch wordt er in de praktijk relatief weinig aandacht besteed aan de gebruiksvriendelijkheid en toegankelijkheid van links, terwijl een simpele verbetering soms een boost voor je site kan betekenen.]]></description>
			<content:encoded><![CDATA[<p>Zonder links zou internet niet bestaan. Links zijn essentieel voor je website. Maar ook voor zoekmachines. En zeker voor bezoekers. En dan niet alleen links naar de website toe, maar ook links op de site zelf. Toch wordt er in de praktijk relatief weinig aandacht besteed aan de gebruiksvriendelijkheid en toegankelijkheid van links, terwijl een simpele verbetering soms een boost voor je site kan betekenen.</p>
<p>De tips in het kort:</p>
<ol>
<li><a href="#echte-link">Maak van elke link een echte link</a></li>
<li><a href="#beschrijvende-tekst">Geef een link een beschrijvende tekst</a></li>
<li><a href="#tekstonderscheid">Zorg dat duidelijk is wat een link is (en wat niet)</a></li>
<li><a href="#linkonderscheid">Maak onderscheid in onbezochte en bezochte links</a></li>
<li><a href="#venster">Open links niet in een nieuw venster</a></li>
<li><a href="#iconen">Gebruik iconen om links te verhelderen</a></li>
</ol>
<p><span id="more-11"></span></p>
<h2 id="echte-link">1. Maak van elke link een echte link</h2>
<p>Wanneer je links hebt waar bezoekers javascript voor nodig hebben om erop te kunnen klikken, dan heb je onechte links. Meestal staat er iets dergelijks in als:</p>
<pre class="brush: html">
&lt;a href=&quot;javascript:newwindow()&quot;&gt;link&lt;/a&gt;
&lt;a href=&quot;#&quot; onclick=&quot;javascript:popUp(&#039;http://www.example.com&#039;)&quot;&gt;link&lt;/a&gt;
</pre>
<p>Die link leidt nergens naartoe wanneer javascript uitstaat. Nou hebben de meeste <em>mensen</em> wel javascript aan, maar <em>zoekmachines</em> niet. Daarom kunnen veel sites met javascriptmenu’s een hoge score in zoekmachines bij voorbaat al vergeten; er valt voor een zoekmachine weinig te indexeren. Daarnaast blijven er altijd mensen die bijvoorbeeld vanwege bedrijfsveiligheid javascript niet aan hebben staan (<a href="http://upsdell.com/BrowserNews/stat_trends.htm#script" title="Browser News: javascript trends" rel="external">ongeveer 5%</a>). En zelfs voor je  webstatistiekenpakket kan het een <a href=" http://www.kaushik.net/avinash/2007/01/web-analytics-technical-implementation-best-practices-javascript-tags.html" rel="external">probleem</a> zijn. <strong>Kortom, zorg dat elke link ook zonder javascript ergens naartoe leidt.</strong> (Alternatieve menu&#8217;s bouw je met CSS, zoals wordt uitgelegd in het <a href="http://css.maxdesign.com.au/listutorial/" rel="external">Listutorial</a>. Gevorderde alternatieven zijn de o.a. de <a href=" http://htmldog.com/articles/suckerfish/ " rel="external">Son of Suckerfish dropdowns</a> of de <a href="http://www.udm4.com/" rel="external">UDM4</a>.)</p>
<h2 id="beschrijvende-tekst">2. Geef een link een beschrijvende tekst</h2>
<p>Uit onderzoek blijkt dat veel <a href="http://www.useit.com/alertbox/9710a.html" rel="external">bezoekers pagina’s niet <em>lezen</em>, maar door de pagina <em>scannen</em></a> naar informatie. <strong>Bezoekers letten op kopjes, dikgedrukte woorden, lijsten/opsommingen, maar ook op links</strong>. Immers, links zijn veelal bedoeld om aan te geven dat je naar meer informatie kun navigeren.</p>
<p>Tot voor kort was één van de meestvoorkomende linkteksten: “klik hier”. Wanneer je weet dat mensen de pagina niet lezen, maar scannen naar woorden en zinsdelen die aangeven dat er bepaalde informatie volgt, dan wordt duidelijk dat ‘klik hier’ de bezoeker weinig zegt. Men moet dan alsnog de context lezen om te begrijpen waar de link naartoe leidt. Bovendien is de &#8216;klik hier&#8217;-zin tekstueel gezien veelal overbodig; het is vaak voldoende om een woord of zinsdeel uit de voorgaande zin te linken.<br />
<img src="/wp-content/px/artikelen-links/links-klik-hier.gif" alt="Niet alleen zegt een 'klik hier'-link niks over waar de link naartoe leidt, de zin is vaak ook overbodig" /><br />
In bovenstaande afbeelding had men makkelijk kunnen volstaan door alles te verwijderen behalve de kopjes en vervolgens een link te maken van &#8216;Lenen via internet&#8217; en &#8216;Muziek lenen&#8217;. Niet alleen is meteen duidelijk wat het onderwerp van de link is, de extra regels &#8216;klik hier voor meer informatie&#8217; zijn ook nog duidelijk overbodig.</p>
<h2 id="tekstonderscheid">3. Zorg dat duidelijk is wat een link is (en wat niet)</h2>
<p>Links zijn vaak onderstreept. Maar op sommige sites wordt daarnaast onderstreping gebruikt om tekstkopjes te maken, of om een bepaald tekstdeel nadruk te geven. Bij teksten op papier is onderstreping daar erg geschikt voor, maar op internet valt zo moeilijker te onderscheiden wat een link is en wat niet.</p>
<p>Voorbeeld:<br />
Dit is <span style="text-decoration:underline;">onderstreepte tekst</span> en dit is een <a href="http://frontaal.net/">link naar de homepage</a>.</p>
<p><strong>Onderstreep dus nooit in internetteksten, tenzij het een link is</strong>. Het <a href="http://www.w3.org" rel="external">W3C</a> heeft niet voor niks het underline-element afgekeurd, zoals ook valt te lezen in mijn artikel over <a href="http://frontaal.net/200611/achterhaalde-elementen-deel-1/">achterhaalde elementen</a>.</p>
<p>Hoewel links dus vaak onderstreept zijn, kiezen sommige sites ervoor de onderstreping van links juist weg te halen. Dat maakt links moeilijker te herkennen. In dat geval is het belangrijk dat je links op andere manieren goed zichtbaar maakt, bijvoorbeeld door ze zowel een andere kleur mee te geven, als door ze dikgedrukt te maken. Let er dan wel goed op dat die links niet lijken op andere elementen in de tekst die <em>geen</em> links zijn.</p>
<h2 id="linkonderscheid">4. Maak onderscheid in onbezochte en bezochte links</h2>
<p>Zeker wanneer je een grote website hebt, is het handig als bezoekers ziet welke pagina’s ze al wel hebben bezocht en welke nog niet. Hoe frustrerend is het als je op een site naar informatie zoekt en je meerdere malen op dezelfde pagina terecht komt, terwijl je daar al bent geweest? Voorkom zulke ergernissen op je eigen site en <a href="http://www.useit.com/alertbox/20040503.html" rel="external">geef bezochte links een ander kleurtje mee</a>. Hiervoor gebruik je de <a href="http://htmldog.com/guides/cssintermediate/pseudoclasses/" rel="external">link-pseudo-classes</a> <code>a:link</code> en <code>a:visited</code>.</p>
<p>Je kunt je pagina nóg gebruiksvriendelijker maken door links op te lichten wanneer je muis er overheen gaat (<code>a:hover</code>), door links op te lichten als je met de tabknop erop staat (<code>a:focus</code>) en door links op te lichten wanneer je erop klikt (<code>a:active</code>). Tip: let in je CSS op de <a href="http://meyerweb.com/eric/thoughts/2007/06/11/who-ordered-the-link-states/" rel="external">volgorde van de link-states</a>.</p>
<h2 id="venster">5. Open links niet in een nieuw venster</h2>
<p>Sites openen links in een nieuw venster meestal om twee redenen:</p>
<ul>
<li>Om te voorkomen dat mensen je site verlaten.</li>
<li>Om de huidige pagina te houden, maar tegelijkertijd een aanvulling te tonen, zoals een extra uitleg, een vergroting van een foto, of een invulscherm.</li>
</ul>
<p>Met name het eerste punt is een veelgehoorde reden om een nieuw venster te laten openen. En inderdaad zijn er veel mensen die een nieuw scherm op prijs stellen. Het blijkt echter dat er net zoveel mensen zijn die helemaal <a href="http://www.smashingmagazine.com/2008/07/01/should-links-open-in-new-windows/" rel="external">geen nieuw venster willen openen</a>, of op z&#8217;n minst zelf de keus daarover willen hebben. Dus <strong>hoewel je de helft helpt, val je de andere helft er mee lastig</strong>. Mensen zelf laten kiezen voor een nieuw scherm is dan de beste optie. Bovendien is het maar de vraag of je mensen kwijt bent zodra je de link in hetzelfde venster opent. Raakt Google mensen kwijt doordat geen enkele link in een nieuw scherm wordt geopend?</p>
<p>Voor het tweede punt, het tonen van aanvullende info over de betreffende pagina, heeft men tegenwoordig methodes bedacht die als alternatief kunnen dienen voor het openen van een nieuw scherm. De informatie die je in het nieuwe scherm zou zetten, kun je bijvoorbeeld ook <a href="http://websemantics.co.uk/resources/accessible_form_help/" rel="external">verwerken in je huidige pagina</a>; je verbergt het met CSS en toont het slechts wanneer men erom vraagt. Een ander alternatief is om de &#8216;popup-pagina&#8217; te openen binnen hetzelfde scherm met behulp van scripts zoals <a href="http://www.huddletogether.com/projects/lightbox2/" rel="external">Lightbox2</a> of <a href="http://jquery.com/demo/thickbox/" rel="external">Thickbox</a>. Is een nieuw scherm toch nodig, zorg dan in ieder geval dat de popuplink leidt naar een <a href="#echte-link">echte pagina</a> (zie punt 1).</p>
<h2 id="iconen">6. Gebruik iconen om links te verhelderen</h2>
<p>Soms werkt het verhelderend om in één oogopslag te zien wat een link doet of waar het naartoe leidt. Op dit blog bijvoorbeeld gebruik ik een icoon om aan te geven dat een link naar een externe website leidt. Ik gebruik daarvoor <a href="http://netters.nl/css-selectors-deel-2" rel="external">attribuut-selectors</a>.</p>
<h2 id="leesvoer">Meer leesvoer</h2>
<ul>
<li>Webrichtlijnen: <a href="http://www.webrichtlijnen.nl/handleiding/ontwikkeling/productie/links-navigatie/" rel="external">Links en navigatie</a></li>
<li>Usarchy: <a href="http://www.usarchy.com/2007/06/klik-hier/" rel="external">Nooit meer &#8220;Klik hier&#8221; en &#8220;Lees verder&#8221;</a></li>
<li>Usarchy: <a href="http://www.usarchy.com/2007/11/usability-mythe-nieuw-venster/" rel="external">Usability mythe #2: open externe links in nieuw venster</a></li>
<li>UseIt: <a href="http://www.useit.com/alertbox/9605.html" rel="external">Top Ten Mistakes in Web Design</a></li>
<li>Dev.Opera: <a href="http://dev.opera.com/articles/view/accessible-context-sensitive-help-with-u/" rel="external">Accessible Context-sensitive Help with Unobtrusive DOM Scripting</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://frontaal.net/200901/zes-tips-voor-gebruiksvriendelijke-links/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Doctype: welke moet ik kiezen?</title>
		<link>http://frontaal.net/200612/doctype-welke-moet-ik-kiezen/</link>
		<comments>http://frontaal.net/200612/doctype-welke-moet-ik-kiezen/#comments</comments>
		<pubDate>Tue, 05 Dec 2006 23:22:04 +0000</pubDate>
		<dc:creator>Roger</dc:creator>
				<category><![CDATA[(X)HTML]]></category>
		<category><![CDATA[doctype]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[markup]]></category>

		<guid isPermaLink="false">http://frontaal.net/2006/12/doctype-welke-moet-ik-kiezen/</guid>
		<description><![CDATA[Een <code>doctype</code> behoort tot de basis van een webpagina. Hoewel een <code>doctype</code> essentieel is voor een voorspelbare weergave van je webpagina, wordt deze door veel mensen niet of verkeerd gebruikt. In deel 2 over <code>doctype</code>: welk <code>doctype</code> moet ik kiezen?]]></description>
			<content:encoded><![CDATA[<p>Een <code>doctype</code> behoort tot de basis van een webpagina. Hoewel een <code>doctype</code> essentieel is voor een voorspelbare weergave van je webpagina, wordt deze door veel mensen niet of verkeerd gebruikt. In deel 1 over <code>doctype</code> lees je <a href="http://frontaal.net/200611/doctype-wat-moet-ik-ermee/">wat je aan een <code>doctype</code> hebt</a>; in deel 2 over <code>doctype</code>: welk <code>doctype</code> moet ik kiezen?</p>
<h2>Inhoud</h2>
<ul>
<li><a href="#valide">De valide <code>doctype</code>s</a></li>
<li><a href="#afvallers">De afvallers</a></li>
<li><a href="#html-xhtml">HTML of XHTML?</a></li>
<li><a href="#conclusie">Conclusie</a></li>
</ul>
<h2 id="valide">De valide <code>doctype</code>s</h2>
<p>Als je de broncodes van websites bekijkt, zijn er talloze doctypes in de omloop. De lijst met <a href="http://www.w3.org/QA/2002/04/valid-dtd-list.html" rel="external">valide <code>doctype</code>s</a> is echter beperkt. Voor webpagina’s komt het in de praktijk neer op de volgende <code>doctype</code>s:</p>
<ul>
<li>Drie HTML 4.01 <code>doctype</code>s (Transitional, Strict, Frameset).</li>
<li>Drie XHTML 1.0 <code>doctype</code>s (Transitional, Strict, Frameset).</li>
<li>Eén XHTML 1.1 <code>doctype</code>.</li>
</ul>
<h2 id="afvallers">De afvallers</h2>
<p>Wanneer je geen frames gebruikt, vallen er al weer twee af uit de lijst. <a href="http://www.webrichtlijnen.overheid.nl/aan-de-slag/alles-over-frames#nadelen" rel="external">Frames zijn namelijk niet aan te raden</a>. Een Transitional <code>doctype</code> wordt gebruikt voor sites in een overgangsfase, bijvoorbeeld voor sites die een contentmanagementsysteem gebruiken dat verouderde HTML levert. Overstappen op een Strict-doctype kan in zulke gevallen ongewenste bijwerkingen in browserweergave hebben. Nieuwe sites hebben dit probleem niet. Daar zou je dan ook geen Transitional-doctype moeten gebruiken. In veruit de meeste gevallen zijn er dan ook <a href="http://24ways.org/2005/transitional-vs-strict-markup" rel="external">geen goede redenen meer om een Transitional <code>doctype</code> te blijven kiezen</a>. Daarmee houden we de volgende <code>doctype</code>s over:</p>
<ul>
<li>Eén HTML 4.01 <code>doctype</code> (Strict).</li>
<li>Eén XHTML 1.0 <code>doctype</code> (Strict).</li>
<li>Eén XHTML 1.1 <code>doctype</code>.</li>
</ul>
<p>Wil je dat bezoekers met Internet Explorer (IE) jouw pagina’s nog steeds kunnen bekijken, dan kun je ook XHTML 1.1 vergeten; IE kan niet met (correct geserveerde) XHTML 1.1-pagina’s omgaan. Dit is ook het geval bij XHTML 1.0, maar daar is <a href="http://www.w3.org/TR/xhtml-media-types/" rel="external">incorrect serveren nog toegestaan</a>. Dan blijven er nog twee <code>doctype</code>s over:</p>
<p>HTML 4.01:</p>
<pre class="brush: html">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01//EN&quot; &quot;http://www.w3.org/TR/html4/strict.dtd&quot;&gt;</pre>
<p>XHTML 1.0:</p>
<pre class="brush: html">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;</pre>
<p>Rest de vraag: kies ik HTML of XHTML?</p>
<h2 id="html-xhtml">HTML of XHTML?</h2>
<p> <span id="more-7"></span><br />
XHTML is nieuwer dan HTML en nieuwer is beter, toch? <a href="http://www.hixie.ch/advocacy/xhtml" rel="external">Dat valt te betwijfelen</a>. Tussen 2003 en 2005 zijn veel websites inderdaad overgestapt op XHTML, maar daar begint men op terug te komen. Belangrijkste kritiekpunt is dat de meest gebruikte browser, IE, zelfs in <a href="http://blogs.msdn.com/b/ie/archive/2005/09/15/467901.aspx" rel="external">versie 7</a> en <a href="http://en.wikipedia.org/wiki/Internet_Explorer#Features" rel="external">versie 8 niet goed omgaat met XHTML</a>. Sterker nog, als je IE XHTML voorlegt <a href="http://www.w3.org/TR/xhtml-media-types/" rel="external">zoals XHTML bedoeld is</a>, dan zie je een leeg scherm. Een mogelijke oplossing is om &#8211; in ieder geval voor IE &#8211; <a href="http://keystonewebsites.com/articles/mime_type.php">XHTML te serveren als HTML</a>. Wanneer de server een IE-browser tegenkomt, dan geeft hij XHTML in een HTML-jasje mee; aan alle andere browsers levert hij échte XHTML. Dat kan echter ook weer <a href="http://bitworking.org/news/134/Content-Negotiation-Considered-Harmful-Again" rel="external">problemen</a> met zich meebrengen.</p>
<p>Sommigen vinden dat momenteel het <a href="http://annevankesteren.nl/2004/08/xhtml" rel="external">serveren van XHTML geen nut</a> heeft, aangezien 85% van de internetters met IE surft en het daarom in 85% van de gevallen niet werkt, zeker de komende jaren. Zij vinden dat je daarom beter een <code>doctype</code> kunt gebruiken waar alle browsers mee overweg kunnen, namelijk HTML 4.01 Strict. Anderen vinden dat je waar mogelijk <a href="http://dev.d10e.net/nb/2005/06/15/markup-in-the-real-world" rel="external">XHTML zou moeten gebruiken</a> (dus voor alle andere browsers behalve IE), bijvoorbeeld om vooruitgang op het web te voorspoedigen. Ook biedt XHTML uitbreidingsmogelijkheden; echter, voor veruit de meeste sitebouwers zullen die mogelijkheden van geen nut zijn. De <a href="http://www.robertnyman.com/2005/11/02/html-or-xhtml/" rel="external">keuze tussen HTML en XHTML</a> komt dus eigenlijk neer op een <a href="http://www.456bereastreet.com/archive/200601/html_or_xhtml_does_it_really_matter/" rel="external">persoonlijke voorkeur</a>.</p>
<h2 id="conclusie">Conclusie</h2>
<p>Van de talloze <code>doctype</code>s die je kunt vinden op internet, zijn er momenteel bij het bouwen van een nieuwe website meestal maar twee relevant: HTML 4.01 Strict en XHTML 1.0 Strict. Gezien de verwaarloosbare meerwaarde en het ontbreken van correcte XHTML-ondersteuning door IE ligt voor mij persoonlijk voor de hand om te kiezen voor HTML 4.01 Strict. Welke van de twee je ook kiest, het houden aan de specificaties van deze <code>doctype</code>s draagt bij aan de toegankelijkheid en vindbaarheid van je site en aan de overzichtelijkheid en duurzaamheid van de markup. Maar bovenal zorgt een correct <code>doctype</code> voor minder problemen met je layout. En wie wil er nou niet minder sitebouwproblemen?</p>
]]></content:encoded>
			<wfw:commentRss>http://frontaal.net/200612/doctype-welke-moet-ik-kiezen/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Achterhaalde HTML-elementen, deel 1</title>
		<link>http://frontaal.net/200611/achterhaalde-elementen-deel-1/</link>
		<comments>http://frontaal.net/200611/achterhaalde-elementen-deel-1/#comments</comments>
		<pubDate>Tue, 28 Nov 2006 23:28:41 +0000</pubDate>
		<dc:creator>Roger</dc:creator>
				<category><![CDATA[(X)HTML]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[markup]]></category>

		<guid isPermaLink="false">http://frontaal.net/2006/11/achterhaalde-elementen-deel-1/</guid>
		<description><![CDATA[In de HTML-specificaties zijn in de loop der tijd diverse elementen afgekeurd. Door het gebruik van achterhaalde bronnen zie je tegenwoordig op internet helaas nog veel afgekeurde elementen terug. Ook hebben sommigen nog elementen in gebruik die helemaal nooit zijn goedgekeurd. Welke elementen worden afgeraden en wat zijn de alternatieven? In deel 1: afgekeurde elementen met CSS-alternatieven.]]></description>
			<content:encoded><![CDATA[<p>In de HTML-specificaties zijn in de loop der tijd diverse elementen afgekeurd. Door het gebruik van achterhaalde bronnen zie je tegenwoordig op internet helaas nog veel afgekeurde elementen terug. Ook hebben sommigen nog elementen in gebruik die helemaal nooit zijn goedgekeurd. Welke elementen worden afgeraden en wat zijn de alternatieven? In deel 1: afgekeurde elementen met CSS-alternatieven.</p>
<h3>Inhoud</h3>
<ul>
<li><a href="#opmaak">Gebruik CSS voor layout en (tekst)opmaak</a></li>
<li><a href="#afgekeurd">Welke elementen zijn afgekeurd?</a>
<ul>
<li><a href="#html-center"><code>Center</code></a></li>
<li><a href="#html-font"><code>Font</code></a></li>
<li><a href="#html-u"><code>U</code></a></li>
</ul>
</li>
<li><a href="#vervolgd">Wordt vervolgd</a></li>
</ul>
<h3 id="opmaak">Gebruik CSS voor layout en (tekst)opmaak</h3>
<p>Een internetpagina bestaat vaak uit plaatjes, geluid of andere multimediale elementen (objecten), tekst, scripts, opmaak en een taal die het allemaal aan elkaar verbindt (markup). Deze taal is meestal HTML of XHTML. Hoewel (X)HTML ook gebruikt kan worden om de opmaak van de pagina te regelen, bestaat er sinds 1996 een taal die nadrukkelijk bedoeld is om de opmaak van internetpagina’s te regelen: Cacading Style Sheets, kortweg CSS. Door nalatigheid van browserfabrikanten heeft het nog jaren geduurd voordat CSS goed gebruikt kon worden, maar daar is anno 2006 geen excuus meer voor: iedereen heeft tegenwoordig een browser die met CSS om kan gaan (tenzij je met speciale soft- of hardware op internet surft). Het W3C, het instituut dat de HTML-specificaties maakt, heeft dan ook <a href="http://www.w3.org/TR/html4/index/elements.html" rel="external">besloten om elementen te schrappen</a> (&#8216;<span lang="en">deprecated</span>&#8216;) die door CSS geregeld kunnen (en zouden moeten) worden.</p>
<h3 id="afgekeurd">Welke elementen zijn afgekeurd?</h3>
<p>De afgekeurde elementen zijn <span id="more-6"></span> <code>applet</code>, <code>basefont</code>, <code>center</code>, <code>dir</code>, <code>font</code>, <code>isindex</code>, <code>menu</code>, <code>s</code>, <code>strike</code> en <code>u</code>. Hiervan bespreek ik de meestgebruikte.</p>
<h4 id="html-center"><code>Center</code></h4>
<p><code>center</code> wordt gebruikt om elementen horizontaal te centreren. HTML is echter niet bedoeld voor layoutdoeleinden, daar is CSS voor. Horizontaal centeren doe je in CSS met <code>margin</code>. Heb je een <code>div</code> in de <code>body</code>, dan centreer je de <code>div</code> binnen <code>body</code> als volgt:</p>
<pre class="brush: css"> div {margin: 0 auto} </pre>
<p>Vergeet de <code>div</code> niet een bepaalde breedte mee te geven; iets centreren dat een onbekende breedte heeft, is namelijk niet te centreren. In het voorbeeld van horizontaal centreren met margins centreer ik een <code>div</code> van 400 pixels.</p>
<p>Het kan voorkomen dat je site dan nog steeds niet gecentreerd is. Een mogelijke oorzaak kan zijn, dat je de site bekijkt IE5, maar die gebruikt tegenwoordig niemand meer. Een meer plausibele verklaring is dat je geen valide <code>doctype</code> gebruikt. Wanneer je met CSS werkt, is een correct <code>doctype</code> essentieel. Lees elders op deze site over <a href="http://frontaal.net/200611/doctype-wat-moet-ik-ermee/">het nut van een <code>doctype</code></a> en <a href="http://frontaal.net/200612/doctype-welke-moet-ik-kiezen/">welk <code>doctype</code> je dan zou moeten kiezen</a>.</p>
<h4 id="html-font"><code>Font</code></h4>
<p><code>font</code> wordt gebruikt om de tekstopmaak te regelen. Zoals je wellicht zelf al gemerkt hebt, komt als je niet oplet na verloop van tijd je document vol te staan met <code>font</code>-elementen. Da’s niet overzichtelijk, niet handig om te onderhouden en bovendien achterhaald. CSS to the rescue.</p>
<p>Wil je alle alinea&#8217;s in Arial, dan regel je dat als volgt:</p>
<pre class="brush: css"> p {font-family: Arial, sans-serif} </pre>
<p>Ik heb een voorbeeld gemaakt waarin alle alinea&#8217;s in Arial worden weergegeven en alle andere elementen in het standaardfont van je browser (meestal Times New Roman).</p>
<h4 id="html-u"><code>U</code></h4>
<p><code>u</code> staat voor underline, het onderstrepen van elementen. Dit is met CSS te regelen via <code>text-decoration: underline</code>, maar ook dat is niet aan te raden. Het onderstrepen van elementen die geen links zijn, schept op internet namelijk veel verwarring onder websitebezoekers. Men denkt dan vaak ten onrechte dat er op te klikken valt. <a href="http://www.useit.com/alertbox/20040510.html" rel="external">Onderstreep dus nooit tekst die geen link is</a>!</p>
<h3 id="vervolgd">Wordt vervolgd</h3>
<p>In deel 2 ga ik verder in op elementen die niet zijn afgekeurd, maar waar wel een beter alternatief voor is. Ook behandel ik elementen die je wel eens tegenkomt, maar nooit tot de specificaties hebben behoord.</p>
<p>Je kunt meer lezen over overbodige metatags in het artikel <a href="http://frontaal.net/200801/de-zin-en-onzin-van-metatags/">De zin en onzin van metatags</a>.</p>
<p><em>Wijziging 28 januari 2008</em>: IE5-specifieke CSS verwijderd, aangezien er niet meer met IE5 wordt gesurft.</p>
]]></content:encoded>
			<wfw:commentRss>http://frontaal.net/200611/achterhaalde-elementen-deel-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Doctype: wat moet ik ermee?</title>
		<link>http://frontaal.net/200611/doctype-wat-moet-ik-ermee/</link>
		<comments>http://frontaal.net/200611/doctype-wat-moet-ik-ermee/#comments</comments>
		<pubDate>Tue, 14 Nov 2006 23:56:11 +0000</pubDate>
		<dc:creator>Roger</dc:creator>
				<category><![CDATA[(X)HTML]]></category>
		<category><![CDATA[doctype]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[markup]]></category>

		<guid isPermaLink="false">http://frontaal.net/2006/11/doctype-wat-moet-ik-ermee/</guid>
		<description><![CDATA[Een <code>doctype</code> behoort tot de basis van een webpagina. Hoewel een <code>doctype</code> essentieel is voor een voorspelbare weergave van je webpagina, wordt deze door veel mensen niet of verkeerd gebruikt. Wat is een doctype en wat moet je ermee?]]></description>
			<content:encoded><![CDATA[<p>Een <code>doctype</code> behoort tot de basis van een webpagina. Hoewel een <code>doctype</code> essentieel is voor een voorspelbare weergave van je webpagina, wordt deze door veel mensen niet of verkeerd gebruikt. Wat is een doctype en wat moet je ermee?</p>
<h3>Inhoud</h3>
<ul>
<li><a href="#doctype">Wat is een <code>doctype</code>?</a></li>
<li><a href="#verschil">Wat voor verschil maakt een <code>doctype</code>?</a>
<ul>
<li><a href="#quirksmode">Quirksmode</a></li>
<li><a href="#standardsmode">Standardsmode</a></li>
<li><a href="#zien">Eerst zien, dan geloven?</a></li>
</ul>
</li>
<li><a href="#conclusie">Conclusie</a></li>
<li><a href="#leesvoer">Meer leesvoer</a></li>
</ul>
<h3 id="doctype">Wat is een <code>doctype</code>?</h3>
<p>Een <code>doctype</code> is over het algemeen de eerste regel in een HTML-pagina (boven het <code>html</code>-element) die aangeeft welke (X)HTML-versie er wordt gebruikt en op welke manier de browser zou moeten omgaan met regels voor layoutweergave. Een voorbeeld van een <code>doctype</code> is:</p>
<pre class="brush: html">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01//EN&quot; &quot;http://www.w3.org/TR/html4/strict.dtd&quot;&gt;</pre>
<p>Er zijn veel verouderde boeken en tutorials in de omloop die deze basis van een HTML-pagina niet behandelen. Tot een aantal jaren geleden kon men daar nog mee wegkomen, maar tegenwoordig hangt de weergave van je pagina af van het <code>doctype</code> dat erboven staat. Wanneer je een bron tegenkomt die het niet over <code>doctype</code> heeft, leg deze bron dan terzijde; die is verouderd.</p>
<h3 id="verschil">Wat voor verschil maakt een <code>doctype</code>?</h3>
<p>Browsers hebben grofweg twee manieren om een pagina weer te geven, namelijk quirksmode en standardsmode. Het hangt <span id="more-3"></span> van het (ontbreken van een) <code>doctype</code> bovenaan het document af in welke modus een browser de webpagina weergeeft. Daarnaast is ook van invloed of er code boven het <code>doctype</code> staat (ook de <a href="http://www.webstandards.org/learn/articles/prolog_problems/" rel="external">XML prolog kan problemen veroorzaken</a>).</p>
<h4 id="quirksmode">Quirksmode</h4>
<p>Zoals de naam al aangeeft, heeft quirksmode nogal wat rare afwijkingen (quirks) in de weergave; elke browser gokt dan namelijk een beetje op basis van eigen aannames hoe een pagina eruit moet komen te zien. En de makers van bijv. <a href="http://www.mozilla-europe.org/nl/" rel="external">Firefox</a> deden andere aannames dan de makers van bijv. Internet Explorer (IE). Resultaat: er kunnen grote verschillen ontstaan in weergave. Toch laat men deze modus er nog inzitten, want veel websites missen een <code>doctype</code>, gebruiken een ongeldig <code>doctype</code>, of hebben code boven het <code>doctype</code> staan. De makers van deze sites rekenen daarmee op de ‘quirks’ van browsers voor een correcte weergave. Afstappen van quirksmode zou voor vele bestaande sites betekenen dat de sitelayout plots uit elkaar valt.</p>
<h4 id="standardsmode">Standardsmode</h4>
<p>Naast quirksmode heb je standardsmode. In deze modus volgt de browser zoveel mogelijk de webstandaarden zoals de W3C ze heeft vastgesteld. Door deze uniforme regels is de weergave van een webpagina door de diverse browsers veel beter te voorspellen; er zijn veel minder verschillen in weergave. Aan te raden is dus om te zorgen dat pagina’s in standardsmode worden weergegeven.</p>
<h4 id="zien">Eerst zien, dan geloven?</h4>
<p>Om een simpel en veelvoorkomend voorbeeld te geven wat voor het verschil het maakt, heb ik drie pagina’s gemaakt waarop een rechthoek te zien is. De pagina&#8217;s verschillen alleen in het gebruikte <code>doctype</code>. Wanneer je deze pagina’s in IE6 of IE7 <a href="#voetnoot" class="voetnoot-nummer">1</a> met elkaar vergelijkt, zul je grote verschillen zien.</p>
<ul>
<li>Op de eerste pagina <a href="http://frontaal.net/voorbeelden/doctype/zonder-doctype/">zonder <code>doctype</code></a> is de box smal (totale breedte = <code>width</code>);</li>
<li>Op de tweede pagina met <a href="http://frontaal.net/voorbeelden/doctype/onvolledig-doctype/">onvolledig (Transitional) <code>doctype</code></a> is de box ook smal (totale breedte = <code>width</code>)</li>
<li>Maar op de derde pagina met <a href="http://frontaal.net/voorbeelden/doctype/volledig-doctype/">volledig <code>doctype</code></a> is de box breder, zoals in de <a href="http://www.w3.org/TR/CSS21/box.html" rel="external">W3C-specificaties</a> wordt bedoeld (totale breedte = <code>width</code> + <code>padding</code> + <code>border</code> + <code>margin</code>)</li>
</ul>
<p>Op de eerste en tweede pagina wordt er gebruik gemaakt van quirksmode, in de derde van standardsmode. In quirksmode maakt IE gebruik van elementafmetingen die werken volgens het door IE (zelfbedachte) boxmodel; in standardsmode maakt IE net als alle andere browsers gebruik van het standaard <a href="http://www.addedbytes.com/for-beginners/the-box-model-for-beginners/" rel="external">boxmodel</a> van het W3C.</p>
<h3 id="conclusie">Conclusie</h3>
<p>Duidelijk is dat een doctype erg veel kan uitmaken. Wil je verschillen in weergave tussen diverse browsers vermijden, dan zou je gebruik moeten maken van standardsmode, waarin de browser zo veel mogelijk uitgaat van door W3C vastgelegde regels. Dat betekent dat je een volledig <code>doctype</code> zou moeten gebruiken.</p>
<p>Maar welk volledig <code>doctype</code> moet je dan kiezen? Dat komt aan bod in <a href="http://frontaal.net/200612/doctype-welke-moet-ik-kiezen/">deel 2 over <code>doctype</code></a>.</p>
<h3 id="leesvoer">Meer leesvoer</h3>
<ul>
<li><a href="http://www.addedbytes.com/for-beginners/the-box-model-for-beginners/" rel="external">The box model</a></li>
<li><a href="http://www.456bereastreet.com/archive/200612/internet_explorer_and_the_css_box_model/" rel="external">Internet Explorer and the CSS box model</a></li>
<li><a href="http://hsivonen.iki.fi/doctype/" rel="external">Activating the right layout mode using the <code>doctype</code> declaration</a></li>
<li><a href="http://www.communitymx.com/content/article.cfm?cid=85FEE" rel="external">Rendering mode and <code>doctype</code> switching</a></li>
<li><a href="http://www.informit.com/guides/content.asp?g=webdesign&#038;seqNum=263&#038;rl=1" rel="external">Box model mastery</a></li>
</ul>
<p id="voetnoot"><span class="voetnoot-nummer">1</span>Waarom zie je geen verschil in IE5.x of lager? Omdat Microsoft het t/m IE5.x niet zo nauw nam op het gebied van webstandaarden.</p>
]]></content:encoded>
			<wfw:commentRss>http://frontaal.net/200611/doctype-wat-moet-ik-ermee/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

