HTML5 Browser Support

U kunt oudere browsers helpen met HTML5.

HTML5 Browser Support

Alle moderne browsers ondersteunen HTML5.

Bovendien zullen alle browsers, ongeacht hun leeftijd, onherkend elementen automatisch behandelen als inline-elementen.

Daarom kun je oudere browsers helpen om "onbekende" HTML-elementen te verwerken.

Opmerking:Je kunt zelfs Stone Age IE6 leren om onbekende HTML-elementen te verwerken.

HTML5-elementen definiëren als blokelementen

HTML5 definieerde acht nieuwesemantisch HTML-elementen. Alle zijnblokelementen.

Je kunt CSS display de eigenschap ingesteld op block, om correct gedrag in oudere browsers te waarborgen:

Voorbeeld

header, section, footer, aside, nav, main, article, figure {
    display: block; 
}

Nieuwe elementen toevoegen aan HTML

Je kunt nieuwe elementen toevoegen aan HTML met behulp van browser-tricks:

Dit voorbeeld voegt een naar HTML toe genaamd <myHero> definiëren van een nieuwe element, en stel display-stijl in:

Voorbeeld

<!DOCTYPE html>
<html>
<head>
  <title>Creating an HTML Element</title>
  <script>document.createElement("myHero")</script>
  <style>
  myHero {
    display: block;
    background-color: #ddd;
    padding: 50px;
    font-size: 30px;
  } 
  </style> 
</head>
<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
<myHero>My First Hero</myHero>
</body>
</html>

Probeer het zelf

Geaddde JavaScript-statementen document.createElement("myHero"), alleen voor IE.

Problemen met Internet Explorer

Deze oplossing kan worden gebruikt voor alle nieuwe HTML5-elementen, maar:

Opmerking:Internet Explorer 8 en oudere versies laten het toe om stijlen toe te voegen aan onbekende elementen.

Gelukkig creëerde Sjoerd Visscher "HTML5 Enabling JavaScript", "the shiv":

<![if lt IE 9]>
  <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

De bovenstaande code is een opmerking, maar IE9-early editions lezen het (en begrijpen het).

Volledige Shiv-oplossing

Voorbeeld

<!DOCTYPE html>
<html>
<head>
  <title>Styling HTML5</title>
  <![if lt IE 9]>
  <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
  <![endif]-->
</head>
<body>
<h1>Mijn Eerste Artikel</h1>
<article>
Londen is de hoofdstad van Engeland. 
Het is de meest bevolkte stad in het Verenigd Koninkrijk, 
met een stedelijk gebied van meer dan 13 miljoen inwoners.
</article>
</body>
</html>

Probeer het zelf

De link naar de shiv-code moet zich bevinden in het <head>-element, omdat Internet Explorer alle nieuwe elementen moet herkennen voordat ze worden gelezen.

HTML5 Skelet

Voorbeeld

<!DOCTYPE html>
<html lang="en">
<head>
<title>HTML5 Skeleton</title>
<meta charset="utf-8">
<![if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
</script>
<![endif]-->
<style>
body {font-family: Verdana, sans-serif; font-size:0.8em;}
header,nav, section,article,footer
{border:1px solid grey; margin:5px; padding:8px;}
nav ul {margin:0; padding:0;}
nav ul li {display:inline; margin:5px;}
</style>
</head>
<body>
<header>
  <h1>HTML5 SKeleton</h1>
</header>
<nav>
<ul>
  <li><a href="html5_semantic_elements.asp">HTML5 Semantic</a></li>
  <li><a href="html5_geolocation.asp">HTML5 Geolocation</a></li>
  <li><a href="html5_canvas.asp">HTML5 Graphics</a></li>
</ul>
</nav>
<section>
<h1>Bekende Steden</h1>
<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 stedelijke regio 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 stedelijke regio ter wereld.</p>
</article>
</section>
<footer>
<p>© 2016 CodeW3C.com. Alle rechten voorbehouden.</p>
</footer>
</body>
</html>

Probeer het zelf