HTML5 Migratie
- Vorige pagina HTML5 Elementen
- Volgende pagina HTML5 Locatiebepaling
Overgang van HTML4 naar HTML5
Dit hoofdstuk legt uit hoe een typische HTML4-pagina kan worden overgezet naar een typische HTML5.
Dit hoofdstuk demonstreert hoe een bestaande HTML4-pagina kan worden omgezet naar een HTML5-pagina, zonder de originele inhoud en structuur te beschadigen.
Opmerking:U kunt dezelfde technieken gebruiken om van HTML4 en XHTML over te stappen naar HTML5.
Een typische HTML4 | Een typische HTML5 |
---|---|
<div id="header"> | <header> |
<div id="menu"> | <nav> |
<div id="content"> | <section> |
<div id="post"> | <article> |
<div id="footer"> | <footer> |
Een typische HTML4-pagina
Voorbeeld
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <title>HTML4</title> <style> body {font-family:Verdana,sans-serif;font-size:0.8em;} div#header,div#footer,div#content,div#post {border:1px solid grey;margin:5px;margin-bottom:15px;padding:8px;background-color:white;} div#header,div#footer {color:white;background-color:#444;margin-bottom:5px;} div#content {background-color:#ddd;} div#menu ul {margin:0;padding:0;} div#menu ul li {display:inline; margin:5px;} </style> </head> <body> <div id="header"> <h1>Monday Times</h1> </div> <div id="menu"> <ul> <li>Nieuws</li> <li>Sport</li> <li>W气象</li> </ul> </div> <div id="content"> <h2>Nieuws Sectie</h2> <div id="post"> <h2>Nieuws Artikel</h2> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> </div> <div id="post"> <h2>Nieuws Artikel</h2> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> </div> </div> <div id="footer"> <p>© 2014 Monday Times. Alle rechten voorbehouden.</p> </div> </body> </html>
naar HTML5 Doctype
Wijzig de documenttype, van HTML4 doctype:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
Wijzig naar HTML5 doctype:
<!DOCTYPE html>
naar HTML5 codering
Wijzig de coderingsinformatie, van HTML4:
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
Wijzig naar HTML5:
<meta charset="utf-8">
Voeg shiv toe
Alle moderne browsers ondersteunen HTML5 semantische elementen.
Bovendien, je kunt oude browsers "leren" hoe ze onbekende elementen moeten afhandelen.
Shiv toegevoegd voor Internet Explorer-ondersteuning:
<![if lt IE 9]> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]-->
Opmerking:Lees meer over shiv in de sectie HTML5 browserondersteuning.
Voeg CSS toe voor HTML5 semantische elementen
Bekijk de bestaande CSS-stijlen:
div#header,div#footer,div#content,div#post { border:1px solid grey;margin:5px;margin-bottom:15px;padding:8px;background-color:white; } div#header,div#footer { color:white;background-color:#444;margin-bottom:5px; } div#content { background-color:#ddd; } div#menu ul { margin:0;padding:0; } div#menu ul li { display:inline; margin:5px; } Dupliceer met dezelfde CSS-stijlen voor HTML5 semantische elementen: header,footer,section,article { border:1px solid grey;margin:5px;margin-bottom:15px;padding:8px;background-color:white; } header,footer { color:white;background-color:#444;margin-bottom:5px; } section { background-color:#ddd; } nav ul { margin:0;padding:0; } nav ul li { display:inline; margin:5px; }
naar HTML5 <header> en <footer>
Verander de <div> elementen met id="header" en id="footer":
<div id="header"> <h1>Monday Times</h1> </div> . . . <div id="footer"> <p>© 2016 CodeW3C.com. Alle rechten voorbehouden.</p> </div>
Wijzig naar HTML5 semantische elementen <header> en <footer>:
<header> <h1>Monday Times</h1> </header> . . . <footer> <p>© 2016 CodeW3C.com. Alle rechten voorbehouden.</p> </footer>
naar HTML5 <nav>
Wijzig het <div>-element met id="menu":
<div id="menu"> <ul> <li>Nieuws</li> <li>Sports</a></li> <li>W气象</li> </ul> </div>
Wijzig naar HTML5 semantische elementen <nav>:
<nav> <ul> <li>Nieuws</li> <li>Sports</a></li> <li>W气象</li> </ul> </nav>
naar HTML5 <section>
Wijzig het <div>-element met id="content":
<div id="content"> . . . </div>
Wijzig naar HTML5 semantische elementen <section>:
<section> . . . </section>
naar HTML5 <article>
Wijzig alle <div>-elementen met class="post":
<div class="post"> <h2>Nieuws Artikel</h2> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> </div>
Wijzig naar HTML5 semantische elementen <article>:
<article> <h2>Nieuws Artikel</h2> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> </article>
Verwijder deze "niet meer benodigde" stijlen:
div#header,div#footer,div#content,div#post { border:1px solid grey;margin:5px;margin-bottom:15px;padding:8px;background-color:white; } div#header,div#footer { color:white;background-color:#444;margin-bottom:5px; } div#content { background-color:#ddd; } div#menu ul { margin:0;padding:0; } div#menu ul li { display:inline; margin:5px; }
Typische HTML5-pagina
U kunt tenslotte de <head>-tag verwijderen. HTML5 heeft deze niet meer nodig:
Voorbeeld
<!DOCTYPE html> <html lang="en"> <title>HTML5</title> <meta charset="utf-8"> <![if lt IE 9]> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"> </script> <![endif]--> <style> body { font-family:Verdana,sans-serif;font-size:0.8em; } header,footer,section,article { border:1px solid grey; margin:5px;margin-bottom:15px;padding:8px; background-color:white; } header,footer { color:white;background-color:#444;margin-bottom:5px; } section { background-color:#ddd; } nav ul { margin:0;padding:0; } nav ul li { display:inline; margin:5px; } </style> <body> <header> <h1>Monday Times</h1> </header> <nav> <ul> <li>Nieuws</li> <li>Sport</li> <li>W气象</li> </ul> </nav> <section> <h2>Nieuws Sectie</h2> <div id="post"> <h2>Nieuws Artikel</h2> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> </div> <div id="post"> <h2>Nieuws Artikel</h2> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> <p>Ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum ipsum lurum hurum turum.</p> </div> </section> <footer> <p>© 2014 Monday Times. Alle rechten voorbehouden.</p> </footer> </body> </html>
Het verschil tussen <article>, <section> en <div>:
In de HTML5-standaard is het verschil tussen <article>, <section> en <div> klein en kan het verwarrend zijn.
In de HTML5-standaard wordt het <section>-element geplaatst als een blok voor relevante elementen.
Het <article>-element wordt gedefinieerd als een volledige, zelfinhoudende blok voor relevante elementen.
Het <div>-element wordt gedefinieerd als een blok voor subelementen.
Hoe moeten we dit begrijpen?
In het voorbeeld hierboven hebben we <section> gebruikt als container voor relevante <articles>.
Maar we kunnen <article> ook gebruiken als een container voor artikelen.
Hier zijn enkele verschillende voorbeelden:
In <article> van <article>: <article> <h2>Bekende Steden</h2> <article> <h2>London</h2> <p>London is de hoofdstad van Engeland. Het is de meest bevolkte stad in het Verenigd Koninkrijk,</p> <p>met een metropoolregio van meer dan 13 miljoen inwoners.</p> </article> <article> <h2>Paris</h2> <p>Paris is de hoofdstad en meest bevolkte stad van Frankrijk.</p> </article> <article> <h2>Tokyo</h2> <p>Tokyo is de hoofdstad van Japan, het centrum van de Grote Tokyo-regio,</p> en de meest bevolkte metropoolregio ter wereld.</p> </article> </article>
<article> van <div>:</article> <article> <h2>Bekende Steden</h2> <div class="city"> <h2>London</h2> <p>London is de hoofdstad van Engeland. Het is de meest bevolkte stad in het Verenigd Koninkrijk,</p> <p>met een metropoolregio van meer dan 13 miljoen inwoners.</p> </div> <div class="city"> <h2>Paris</h2> <p>Paris is de hoofdstad en meest bevolkte stad van Frankrijk.</p> </div> <div class="city"> <h2>Tokyo</h2> <p>Tokyo is de hoofdstad van Japan, het centrum van de Grote Tokyo-regio,</p> en de meest bevolkte metropoolregio ter wereld.</p> </div> </article>
<article> van <section> van <div>:</article> <article> <section> <h2>Bekende Steden</h2> <div class="city"> <h2>London</h2> <p>London is de hoofdstad van Engeland. Het is de meest bevolkte stad in het Verenigd Koninkrijk,</p> <p>met een metropoolregio van meer dan 13 miljoen inwoners.</p> </div> <div class="city"> <h2>Paris</h2> <p>Paris is de hoofdstad en meest bevolkte stad van Frankrijk.</p> </div> <div class="city"> <h2>Tokyo</h2> <p>Tokyo is de hoofdstad van Japan, het centrum van de Grote Tokyo-regio,</p> en de meest bevolkte metropoolregio ter wereld.</p> </div> </section> <section> <h2>Bekende Landen</h2> <div class="country"> <h2>Engeland</h2> <p>London is de hoofdstad van Engeland. Het is de meest bevolkte stad in het Verenigd Koninkrijk,</p> <p>met een metropoolregio van meer dan 13 miljoen inwoners.</p> </div> <div class="country"> <h2>Frankrijk</h2> <p>Paris is de hoofdstad en meest bevolkte stad van Frankrijk.</p> </div> <div class="country"> <h2>Japan</h2> <p>Tokyo is de hoofdstad van Japan, het centrum van de Grote Tokyo-regio,</p> en de meest bevolkte metropoolregio ter wereld.</p> </div> </section> </article>
- Vorige pagina HTML5 Elementen
- Volgende pagina HTML5 Locatiebepaling