SlideShare une entreprise Scribd logo
1  sur  38
Introduction
à
M. Abdoulaye DIENG Jan 20171
Objectif général
Découvrir quelques nouveautés du HTML5
2
Objectifs opérationnels
• Connaître les avantages du HTML5
• Utiliser les nouveaux éléments de structuration
• Utiliser les nouveaux éléments conteneurs
• Utiliser les nouveaux éléments de contenu
incorporé
• Utiliser les nouveaux éléments et attributs de
formulaire
3
Sommaire
1. Présentation de HTML5
2. Avantages du HTML5
3. Squelette de base
4. Éléments de structuration
5. Éléments conteneurs
6. Éléments de contenu incorporé
7. Éléments et attributs de formulaire
4
Présentation de HTML5
• HTML5 (HyperText Markup Language 5) est la dernière
révision majeure du standard HTML
• HTML5 est finalisé en octobre 2014 par le WHATWG (Web
Hypertext Application Technology Working Group) et le W3C
(World Wide Web Consortium)
• HTML5 se focalise sur les applications Web et l'interactivité,
sans toutefois délaisser l'accessibilité et la sémantique.
• HTML5 se positionne également comme concurrent des
technologies Flash, Silverlight et mobiles (natives)
• Tous les navigateurs ne supportent pas toutes les
fonctionnalités offertes par HTML5.
Vérifier le support sur : http://caniuse.com/
5
Avantages du HTML 5
• Pour le développeur :
– code plus léger
– validation intégrée de formulaire
– facilité de mettre des animations
– beaucoup d’API JavaScript intégrées
• Pour l’internaute :
– chargement plus rapide des pages
– formulaires plus efficaces et plus faciles à utiliser
– pas besoin de plugin pour les animations
– augmentation de l’UX (drag&drop, webcam, geoloc., etc.)
6
Squelette de base du HTML 5
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<title> Titre de la page </title>
</head>
<body>
contenu de la page
</body>
</html>
7
Éléments de structuration
schéma
8
Éléments de structuration
section
• Utilisé pour regrouper des éléments différents, mais
partageant la même thématique.
• section est équivalent (ou remplaçant) de div
• Définit les chapitres, en-têtes, pieds de page, ou toutes autres
sections du document.
9
Éléments de structuration
section
<section>
<h2> Section 1 </h2>
<section>
<h3> Section 1.1 </h3>
<section>
<h4> Section 1.1.1 </h4>
</section>
</section>
</section>
<section>
<h2> Section 2 </h2>
<section>
<h3> Section 2.1 </h3>
<p>Lorem Ipsum Dolor Sit Amet.<p>
</section> 10
Éléments de structuration
article
• Délimite du contenu ayant son propre sens indépendamment
du reste de la page
• Ce contenu est distribuable et réutilisable.
• Ce contenu peut être un billet de forum, un article de journal,
un gadget, un commentaire d'utilisateur.
11
Éléments de structuration
article
<article>
<h2> titre de l'article </h2>
<section>
<h3> Section 1 </h3>
<p> lorem ipsum dolor …
</p>
</section>
…
</article>
12
Éléments de structuration
nav
• Délimite des liens de navigation inter-pages ou intra-page
<nav>
<ul>
<li><a href="index.html">Accueil</a></li>
<li><a href="faq.html">FAQ</a></li>
<li><a href="apropos.html">À propos</a></li>
<li><a href="services.html">Nos
services</a></li>
</ul>
</nav>
13
Éléments de structuration
aside
• Encapsule du contenu supplémentaire relative à un article,
une section ou une page
• Peut être :
– un glossaire, une citation de l'article ou de la section
parent
– Liste de blogues lus, liens relatifs pour une page ou un site.
• Le contenu ne doit pas être nécessaire à la compréhension de
l'article, de la section ou de la page
14
Éléments de structuration
aside
<article>
<h1>Titre de l'article</h1>
<section>
<h2>Section 1</h2>
<p> lorem ipsum dolor … </p>
</section>
<aside>
<h2>Glossaire</h2>
<dl>
<dt>mot 1</dt>
<dd>Lorem Ipsum Dolor Sit Amet</dd>
<dt>mot 2</dt>
<dd>Lorem ipsum dolor sit amet</dd>
</dl>
</aside>
</article>
15
Éléments de structuration
header
• Pour l'entête d'une section et/ou d'une page
• Peut contenir le titre principal h1 de la page, une table des
matières, un logo, un formulaire de recherche, etc.
• Possibilité d’avoir plusieurs header dans une page
16
Éléments de structuration
header
<header>
<h1>Le titre le plus important de la
page</h1>
<nav>
<ul>
<li><a href="#">Accueil</a></li>
<li><a href="#">À propos</a></li>
<li><a href="#">Nos produits</a></li>
</ul>
</nav>
</header>
<article>
<header>
<h2>Titre de cet article</h2>
</header>
<p>...Lorem Ipsum dolor set amet...</p> 17
Éléments de structuration
footer
• Pied de page pour le premier ancêtre parent de type section
• Peut contenir l'information sur l'auteur et sur les droits
d'auteur
• Peut contenir des liens relatifs à la section, des liens vers la
carte du site, des liens vers le formulaire de contact, etc.
• Ces liens ne doivent pas être délimités par nav.
18
Éléments de structuration
footer
<article>
contenu de l’article ….
<footer>
<p>Cet article a été écrit par …
Copyright © … </p>
<ul>
<li><a href="#">À propos</a></li>
<li><a href="#">Nous contacter</a></li>
</ul>
</footer>
</article>
19
Éléments conteneurs
figure et figcaption
• figure sert de conteneur dans lequel s'insèrent divers
éléments comme des images, des schémas, des diagrammes
ou du code.
• figcaption, enfant direct de figure, son rôle est de légender
son parent, sous forme de texte et/ou de liens.
• figcaption est facultatif et peut se placer avant ou après le
contenu principal de figure.
<figure>
<figcaption>Bobby, le chien de
Modou</figcaption>
<img src="bobby.jpg" width="304" height="228"
/>
</figure> 20
Éléments conteneurs
main
• Délimite le contenu principal du document ou de l'application.
• Ce contenu doit être unique dans le document, excluant tout
contenu qui est répété sur plusieurs documents comme des
barres latérales, liens de navigation, informations de
copyright, logo du site, et champs de recherche
• Un seul élément main dans un document
tp1
21
Éléments de contenu incorporé
video
• video permet d’intégrer une vidéo dans une page sans recourir
à un plugiciel
• L’attribut src : lien vers le fichier de la vidéo
• L’attribut autoplay : lecture automatique
• L’attribut loop : relecture automatique
• L’attribut poster : lien vers une image à présenter pendant que
la vidéo se charge ou si elle n'est pas disponible
• L’attribut controls : affichage des commandes de lecture
• L’attribut preload = auto|metadata|none : préchargement
– metadata : nom, format, taille, durée, …
– none : aucun
– auto (par défaut) : le navigateur décide s'il doit précharger
toute la vidéo, uniquement les métadonnées ou rien du tout22
Éléments de contenu incorporé
video - formats et support
Chrome Firefox Opera Safari IE9+
WebM Oui Oui Oui Non Oui
mp4 Oui Non Non Oui Oui
Ogg Oui Oui Oui Non Non
• Il n'y a pas de format vidéo unique qui est supporté par
tous les navigateurs.
• Fournir plusieurs formats à la fois afin d'assurer le soutien
de lecture dans tous les principaux navigateurs.
Plateforme utile : http://www.online-convert.com/
• L’élément source, enfant de video, permet de fournir
plusieurs versions de la vidéo avec son attribut src.
23
Éléments de contenu incorporé
video - exemple
<video preload="none" controls>
<source src="mon_film.mp4" type="video/mp4">
<source src="mon_film.ogv" type="video/ogg">
<source src="mon_film.webm"
type="video/webm">
Votre navigateur ne supporte pas la balise video.
</video>
tp2
24
Éléments de contenu incorporé
audio
• audio permet d’intégrer de l’audio dans une page sans recourir
à un plugiciel
• L’attribut src : lien vers le fichier audio
• L’attribut autoplay : lecture automatique
• L’attribut loop : lecture en boucle
• L’attribut controls : affichage des commandes de lecture
25
Éléments de contenu incorporé
audio - formats et support
Chrome Firefox Opera Safari IE9+
Wav Oui Non Oui Oui Oui
Mp3 Oui Non Non Oui Oui
Ogg Oui Oui Oui Non Non
Aac Oui Non Non Oui Non
• Il n'y a pas de format audio unique qui est supporté par
tous les navigateurs.
• Fournir plusieurs formats à la fois afin d'assurer le soutien
de lecture dans tous les principaux navigateurs.
• L’élément source, enfant de audio, permet de fournir
plusieurs versions de l’audio avec son attribut src.
26
Éléments de contenu incorporé
audio - exemple
<audio controls="controls">
<source src="concerto_mozart.wav" type="audio/wav" />
<source src="concerto_mozart.ogg" type="audio/ogg" />
<source src="concerto_mozart.mp3" type="audio/mp3"
/>
<source src="concerto_mozart.aac" type="audio/aac" />
Votre navigateur ne supporte pas la balise audio.
</audio>
27
Éléments de formulaire
champ email
• Pour renseigner une ou plusieurs adresses e-mail.
• Ce champ attend au minium un caractère (caractère non
accentué comprenant les séparateurs tiret ou underscore)
suivi d'un @ suivi à son tour d'un caractère.
• Un navigateur de SmartPhone compatible avec ce type de
champ présentera un clavier adapté incluant les symboles . et
@.
<input type="email" name="votre_email" />
<input type="email" name="vos_emails[]"
multiple="multiple" />
28
Éléments de formulaire
champ url
• Pour renseigner une URL
• Tous les types d'URL sont admis (ftp://, mailto:, http://, …).
• Un navigateur de SmartPhone compatible avec ce type de
champ présentera un clavier adapté incluant les touches /, . et
.com.
<input type="url" name="votre_site" />
29
Éléments de formulaire
champ tel
• Pour renseigner un numéro de téléphone.
• Un navigateur de SmartPhone compatible avec ce type de
champ présentera un clavier de type numérique.
<input type="tel" name="votre_phone"
/>
30
Éléments de formulaire
champ date
• Pour renseigner une date
• Un navigateur compatible propose une aide au remplissage
<input type="date" name="date_naiss"
/> 31
Éléments de formulaire
champ number
• Pour renseigner une valeur numérique.
• Un navigateur compatible propose deux boutons permettant
l'incrémentation et la décrémentation d'une valeur
numérique initiale (0 par défaut).
• Un Smartphone compatible propose un clavier numérique.
• L’attribut step permet de modifier le pas (1 par défaut) de
l’incrémentation.
• Les attributs min et max permettent de limiter le nombre
dans un intervalle défini.
<input type="number" name="age"
/>
32
Éléments de formulaire
champ range
• Pour renseigner une valeur numérique dans un intervalle
donné.
• Un navigateur compatible propose un curseur.
• L’attribut step permet de modifier le pas (1 par défaut) de
l’incrémentation.
• Les attributs min et max permettent de limiter le nombre
dans un intervalle défini.
• Par défaut cet intervalle est [0; 100]
<input type="range" name="niveau"
/> 33
Éléments de formulaire
élément datalist
• datalist : délimite une liste de suggestions, liée à un
élément input.
34
• option : enfant de datalist, définit une suggestion comme
valeur de son attribut value
• Le champ (input) et la liste de suggestions (datalist + option)
sont reliés grâce à la valeur commune des attributs list de
l’input et id de la datalist.
Éléments de formulaire
élément datalist
<label for="a">Votre plat
préféré</label>
<input id="a" list="plat" />
<datalist id="plat">
<option value="tiébou dieune">
<option value="mafé">
<option value="thiou">
<option value="yassa">
<option value="cbon">
</datalist>
35
Éléments de formulaire
attribut autofocus
• Spécifie si le champ doit recevoir automatiquement le curseur
au chargement du formulaire
<form action="login.php">
Email : <input type="email" name="email"
autofocus><br>
Mot de
passe: <input type="password" name="pass"><br>
<input type="submit" value="Connexion" >
</form>
36
Éléments de formulaire
attribut placeholder
• Permet d’afficher une valeur indicative dans un champ de
texte
• Quand l’utilisateur clique dans le champ, contrairement à ce
qui se passe avec l’attribut value, le contenu disparaît.
• La valeur indicative n'est pas transmise lors de la soumission
du formulaire.
• NB : La présence d'un placeholder ne dispense pas de
renseigner un label pertinent.
<input type="text" placeholder="Votre pseudonyme"
name="pseudo"/>
37
Éléments de formulaire
attribut required
• Permet de rendre obligatoire le remplissage d'un champ et de
bloquer la validation du formulaire si l'un des champs
(concernés par cet attribut) n'a pas été renseigné.
• NB : L'attribut required ne dispense pas de rajouter, pour
chaque champ obligatoire, dans l'étiquette associée une
astérisque et de faire précéder le formulaire du message
« Les champs indiqués par une * sont obligatoires ».
<input type="text" required="required"
name="pseudo"/>
38
tp3

Contenu connexe

Tendances

Creation de-themes-wp
Creation de-themes-wpCreation de-themes-wp
Creation de-themes-wpChi Nacim
 
Développement d’extensions WordPress
Développement d’extensions WordPressDéveloppement d’extensions WordPress
Développement d’extensions WordPressChi Nacim
 
Les balises HTML
Les balises HTMLLes balises HTML
Les balises HTMLNeovov
 
Conversion de template HTML en thème WordPress
Conversion de template HTML en thème WordPressConversion de template HTML en thème WordPress
Conversion de template HTML en thème WordPressChi Nacim
 
HTML 5, CSS 3 au service du web | Semaine du web Alger (Algérie)
HTML 5, CSS 3 au service du web | Semaine du web Alger (Algérie)HTML 5, CSS 3 au service du web | Semaine du web Alger (Algérie)
HTML 5, CSS 3 au service du web | Semaine du web Alger (Algérie)Khaled Djebloun
 
Langage HTML - Fondamentaux et ateliers
Langage HTML - Fondamentaux et ateliersLangage HTML - Fondamentaux et ateliers
Langage HTML - Fondamentaux et ateliersFrédéric Simonet
 
Formation html5 css3 java script
Formation html5 css3 java scriptFormation html5 css3 java script
Formation html5 css3 java scriptArrow Group
 
HTML5, le web de demain - BNSA
HTML5, le web de demain - BNSAHTML5, le web de demain - BNSA
HTML5, le web de demain - BNSABNSA - Aquitaine
 
Mini projet individuel php
Mini projet individuel phpMini projet individuel php
Mini projet individuel phpKhadim Mbacké
 
Panels, une autre façon de construire. DrupalCamp Paris 2013
Panels, une autre façon de construire. DrupalCamp Paris 2013Panels, une autre façon de construire. DrupalCamp Paris 2013
Panels, une autre façon de construire. DrupalCamp Paris 2013bellesmanieres
 

Tendances (20)

Introduction à Symfony
Introduction à SymfonyIntroduction à Symfony
Introduction à Symfony
 
HTML
HTMLHTML
HTML
 
Creation de-themes-wp
Creation de-themes-wpCreation de-themes-wp
Creation de-themes-wp
 
Introduction à React
Introduction à ReactIntroduction à React
Introduction à React
 
Développement d’extensions WordPress
Développement d’extensions WordPressDéveloppement d’extensions WordPress
Développement d’extensions WordPress
 
Les balises HTML
Les balises HTMLLes balises HTML
Les balises HTML
 
Initiation à Bootstrap
Initiation à BootstrapInitiation à Bootstrap
Initiation à Bootstrap
 
Introduction à Laravel
Introduction à LaravelIntroduction à Laravel
Introduction à Laravel
 
Introduction à Angular
Introduction à AngularIntroduction à Angular
Introduction à Angular
 
Conversion de template HTML en thème WordPress
Conversion de template HTML en thème WordPressConversion de template HTML en thème WordPress
Conversion de template HTML en thème WordPress
 
HTML 5, CSS 3 au service du web | Semaine du web Alger (Algérie)
HTML 5, CSS 3 au service du web | Semaine du web Alger (Algérie)HTML 5, CSS 3 au service du web | Semaine du web Alger (Algérie)
HTML 5, CSS 3 au service du web | Semaine du web Alger (Algérie)
 
Langage HTML - Fondamentaux et ateliers
Langage HTML - Fondamentaux et ateliersLangage HTML - Fondamentaux et ateliers
Langage HTML - Fondamentaux et ateliers
 
Formation web
Formation webFormation web
Formation web
 
Formation html5 css3 java script
Formation html5 css3 java scriptFormation html5 css3 java script
Formation html5 css3 java script
 
HTML5, le web de demain - BNSA
HTML5, le web de demain - BNSAHTML5, le web de demain - BNSA
HTML5, le web de demain - BNSA
 
Mini projet individuel php
Mini projet individuel phpMini projet individuel php
Mini projet individuel php
 
Advanced html5
Advanced html5Advanced html5
Advanced html5
 
Panels, une autre façon de construire. DrupalCamp Paris 2013
Panels, une autre façon de construire. DrupalCamp Paris 2013Panels, une autre façon de construire. DrupalCamp Paris 2013
Panels, une autre façon de construire. DrupalCamp Paris 2013
 
Php & My Sql
Php & My SqlPhp & My Sql
Php & My Sql
 
Formation php pdo
Formation php pdoFormation php pdo
Formation php pdo
 

En vedette (10)

Html 5 introduction
Html 5 introductionHtml 5 introduction
Html 5 introduction
 
Nnnnooemi pool riooss 1c
Nnnnooemi pool riooss 1cNnnnooemi pool riooss 1c
Nnnnooemi pool riooss 1c
 
Intro to html 5
Intro to html 5Intro to html 5
Intro to html 5
 
Introduction to html 5
Introduction to html 5Introduction to html 5
Introduction to html 5
 
Introduction to html 5
Introduction to html 5Introduction to html 5
Introduction to html 5
 
An Intro to Mobile HTML5
An Intro to Mobile HTML5An Intro to Mobile HTML5
An Intro to Mobile HTML5
 
01 Php Introduction
01 Php Introduction01 Php Introduction
01 Php Introduction
 
Introduction to php basics
Introduction to php   basicsIntroduction to php   basics
Introduction to php basics
 
Html 5, a gentle introduction
Html 5, a gentle introductionHtml 5, a gentle introduction
Html 5, a gentle introduction
 
Introduction to Web Architecture
Introduction to Web ArchitectureIntroduction to Web Architecture
Introduction to Web Architecture
 

Similaire à Introduction à HTML 5

Cours_1 - HTML5 et JS.ppt
Cours_1 - HTML5 et JS.pptCours_1 - HTML5 et JS.ppt
Cours_1 - HTML5 et JS.pptRihabBENLAMINE
 
HTML 5 - intro - en francais
HTML 5 - intro - en francaisHTML 5 - intro - en francais
HTML 5 - intro - en francaisVlad Posea
 
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptx
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptxFormation developpement web KADODJOMON EMMANUEL COULIBALY.pptx
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptxtanokouakouludovic
 
Etendre le Web avec les Web Components
Etendre le Web avec les Web ComponentsEtendre le Web avec les Web Components
Etendre le Web avec les Web Componentscjolif
 
365 saturday - Développer un plugin XrmToolBox
365 saturday - Développer un plugin XrmToolBox365 saturday - Développer un plugin XrmToolBox
365 saturday - Développer un plugin XrmToolBoxTanguy TOUZARD
 
Prsentationhtml5 html5 ii twebteck
Prsentationhtml5 html5 ii twebteckPrsentationhtml5 html5 ii twebteck
Prsentationhtml5 html5 ii twebteckTECOS
 
Drupal en bibliothèque (2008)
Drupal en bibliothèque (2008)Drupal en bibliothèque (2008)
Drupal en bibliothèque (2008)Nicolas Morin
 
Concilier accessibilité et SEO
Concilier accessibilité et SEOConcilier accessibilité et SEO
Concilier accessibilité et SEOSébastien Delorme
 
Accessibilité et SEO - Sébastien Delorme - SEO Campus 2010
Accessibilité et SEO - Sébastien Delorme - SEO Campus 2010Accessibilité et SEO - Sébastien Delorme - SEO Campus 2010
Accessibilité et SEO - Sébastien Delorme - SEO Campus 2010SEO CAMP
 
Projet Confluence - Une base de données de type Wiki
Projet Confluence - Une base de données de type WikiProjet Confluence - Une base de données de type Wiki
Projet Confluence - Une base de données de type WikiMylneRoffi
 
Kits formation html-les_bases
Kits formation html-les_basesKits formation html-les_bases
Kits formation html-les_baseskitsformation
 

Similaire à Introduction à HTML 5 (20)

Cours html5
Cours html5Cours html5
Cours html5
 
Cours_1 - HTML5 et JS.ppt
Cours_1 - HTML5 et JS.pptCours_1 - HTML5 et JS.ppt
Cours_1 - HTML5 et JS.ppt
 
Introduction aspnet
Introduction aspnetIntroduction aspnet
Introduction aspnet
 
Atelier template
Atelier templateAtelier template
Atelier template
 
HTML 5 - intro - en francais
HTML 5 - intro - en francaisHTML 5 - intro - en francais
HTML 5 - intro - en francais
 
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptx
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptxFormation developpement web KADODJOMON EMMANUEL COULIBALY.pptx
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptx
 
Association 2 0
Association 2 0Association 2 0
Association 2 0
 
Association 2 0
Association 2 0Association 2 0
Association 2 0
 
Etendre le Web avec les Web Components
Etendre le Web avec les Web ComponentsEtendre le Web avec les Web Components
Etendre le Web avec les Web Components
 
365 saturday - Développer un plugin XrmToolBox
365 saturday - Développer un plugin XrmToolBox365 saturday - Développer un plugin XrmToolBox
365 saturday - Développer un plugin XrmToolBox
 
Prsentationhtml5 html5 ii twebteck
Prsentationhtml5 html5 ii twebteckPrsentationhtml5 html5 ii twebteck
Prsentationhtml5 html5 ii twebteck
 
WordPress
WordPressWordPress
WordPress
 
BDW-ProgWEB_P1.pdf
BDW-ProgWEB_P1.pdfBDW-ProgWEB_P1.pdf
BDW-ProgWEB_P1.pdf
 
Drupal en bibliothèque (2008)
Drupal en bibliothèque (2008)Drupal en bibliothèque (2008)
Drupal en bibliothèque (2008)
 
Prise en main de Joomla
Prise en main de JoomlaPrise en main de Joomla
Prise en main de Joomla
 
Créer un template pour Joomla 2.5
Créer un template pour Joomla 2.5Créer un template pour Joomla 2.5
Créer un template pour Joomla 2.5
 
Concilier accessibilité et SEO
Concilier accessibilité et SEOConcilier accessibilité et SEO
Concilier accessibilité et SEO
 
Accessibilité et SEO - Sébastien Delorme - SEO Campus 2010
Accessibilité et SEO - Sébastien Delorme - SEO Campus 2010Accessibilité et SEO - Sébastien Delorme - SEO Campus 2010
Accessibilité et SEO - Sébastien Delorme - SEO Campus 2010
 
Projet Confluence - Une base de données de type Wiki
Projet Confluence - Une base de données de type WikiProjet Confluence - Une base de données de type Wiki
Projet Confluence - Une base de données de type Wiki
 
Kits formation html-les_bases
Kits formation html-les_basesKits formation html-les_bases
Kits formation html-les_bases
 

Plus de Abdoulaye Dieng

Fondamentaux du Référencement naturel
Fondamentaux du Référencement naturelFondamentaux du Référencement naturel
Fondamentaux du Référencement naturelAbdoulaye Dieng
 
Panorama des Technologies mobiles
Panorama des Technologies mobilesPanorama des Technologies mobiles
Panorama des Technologies mobilesAbdoulaye Dieng
 
Prise en main de WordPress
Prise en main de WordPressPrise en main de WordPress
Prise en main de WordPressAbdoulaye Dieng
 
Fondamentaux d’une API REST
Fondamentaux d’une API RESTFondamentaux d’une API REST
Fondamentaux d’une API RESTAbdoulaye Dieng
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScriptAbdoulaye Dieng
 
Introduction à l’orienté objet en Python
Introduction à l’orienté objet en PythonIntroduction à l’orienté objet en Python
Introduction à l’orienté objet en PythonAbdoulaye Dieng
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JSAbdoulaye Dieng
 
Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmiqueAbdoulaye Dieng
 
Requêtes HTTP synchrones et asynchrones
Requêtes HTTPsynchrones et asynchronesRequêtes HTTPsynchrones et asynchrones
Requêtes HTTP synchrones et asynchronesAbdoulaye Dieng
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScriptAbdoulaye Dieng
 
Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmiqueAbdoulaye Dieng
 
Introduction à AngularJS
Introduction à AngularJSIntroduction à AngularJS
Introduction à AngularJSAbdoulaye Dieng
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express jsAbdoulaye Dieng
 
Cours référencement naturel supdeco techonologie avril-15
Cours référencement naturel supdeco techonologie avril-15Cours référencement naturel supdeco techonologie avril-15
Cours référencement naturel supdeco techonologie avril-15Abdoulaye Dieng
 
Cours CSS feuilles de style en cascade- mars 2015
Cours CSS feuilles de style en cascade- mars 2015Cours CSS feuilles de style en cascade- mars 2015
Cours CSS feuilles de style en cascade- mars 2015Abdoulaye Dieng
 
Architecture ordinateur-echange-de-donnees
Architecture ordinateur-echange-de-donneesArchitecture ordinateur-echange-de-donnees
Architecture ordinateur-echange-de-donneesAbdoulaye Dieng
 
Architecture des ordinateurs : microprocesseur
Architecture des ordinateurs : microprocesseurArchitecture des ordinateurs : microprocesseur
Architecture des ordinateurs : microprocesseurAbdoulaye Dieng
 

Plus de Abdoulaye Dieng (20)

Fondamentaux du Référencement naturel
Fondamentaux du Référencement naturelFondamentaux du Référencement naturel
Fondamentaux du Référencement naturel
 
Panorama des Technologies mobiles
Panorama des Technologies mobilesPanorama des Technologies mobiles
Panorama des Technologies mobiles
 
Prise en main de WordPress
Prise en main de WordPressPrise en main de WordPress
Prise en main de WordPress
 
Fondamentaux d’une API REST
Fondamentaux d’une API RESTFondamentaux d’une API REST
Fondamentaux d’une API REST
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScript
 
Introduction à l’orienté objet en Python
Introduction à l’orienté objet en PythonIntroduction à l’orienté objet en Python
Introduction à l’orienté objet en Python
 
Introduction à Python
Introduction à PythonIntroduction à Python
Introduction à Python
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JS
 
Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmique
 
Requêtes HTTP synchrones et asynchrones
Requêtes HTTPsynchrones et asynchronesRequêtes HTTPsynchrones et asynchrones
Requêtes HTTP synchrones et asynchrones
 
Introduction à jQuery
Introduction à jQueryIntroduction à jQuery
Introduction à jQuery
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScript
 
Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmique
 
Introduction à AngularJS
Introduction à AngularJSIntroduction à AngularJS
Introduction à AngularJS
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express js
 
introduction à MongoDB
introduction à MongoDBintroduction à MongoDB
introduction à MongoDB
 
Cours référencement naturel supdeco techonologie avril-15
Cours référencement naturel supdeco techonologie avril-15Cours référencement naturel supdeco techonologie avril-15
Cours référencement naturel supdeco techonologie avril-15
 
Cours CSS feuilles de style en cascade- mars 2015
Cours CSS feuilles de style en cascade- mars 2015Cours CSS feuilles de style en cascade- mars 2015
Cours CSS feuilles de style en cascade- mars 2015
 
Architecture ordinateur-echange-de-donnees
Architecture ordinateur-echange-de-donneesArchitecture ordinateur-echange-de-donnees
Architecture ordinateur-echange-de-donnees
 
Architecture des ordinateurs : microprocesseur
Architecture des ordinateurs : microprocesseurArchitecture des ordinateurs : microprocesseur
Architecture des ordinateurs : microprocesseur
 

Introduction à HTML 5

  • 2. Objectif général Découvrir quelques nouveautés du HTML5 2
  • 3. Objectifs opérationnels • Connaître les avantages du HTML5 • Utiliser les nouveaux éléments de structuration • Utiliser les nouveaux éléments conteneurs • Utiliser les nouveaux éléments de contenu incorporé • Utiliser les nouveaux éléments et attributs de formulaire 3
  • 4. Sommaire 1. Présentation de HTML5 2. Avantages du HTML5 3. Squelette de base 4. Éléments de structuration 5. Éléments conteneurs 6. Éléments de contenu incorporé 7. Éléments et attributs de formulaire 4
  • 5. Présentation de HTML5 • HTML5 (HyperText Markup Language 5) est la dernière révision majeure du standard HTML • HTML5 est finalisé en octobre 2014 par le WHATWG (Web Hypertext Application Technology Working Group) et le W3C (World Wide Web Consortium) • HTML5 se focalise sur les applications Web et l'interactivité, sans toutefois délaisser l'accessibilité et la sémantique. • HTML5 se positionne également comme concurrent des technologies Flash, Silverlight et mobiles (natives) • Tous les navigateurs ne supportent pas toutes les fonctionnalités offertes par HTML5. Vérifier le support sur : http://caniuse.com/ 5
  • 6. Avantages du HTML 5 • Pour le développeur : – code plus léger – validation intégrée de formulaire – facilité de mettre des animations – beaucoup d’API JavaScript intégrées • Pour l’internaute : – chargement plus rapide des pages – formulaires plus efficaces et plus faciles à utiliser – pas besoin de plugin pour les animations – augmentation de l’UX (drag&drop, webcam, geoloc., etc.) 6
  • 7. Squelette de base du HTML 5 <!DOCTYPE html> <html lang="fr"> <head> <meta charset="utf-8" /> <title> Titre de la page </title> </head> <body> contenu de la page </body> </html> 7
  • 9. Éléments de structuration section • Utilisé pour regrouper des éléments différents, mais partageant la même thématique. • section est équivalent (ou remplaçant) de div • Définit les chapitres, en-têtes, pieds de page, ou toutes autres sections du document. 9
  • 10. Éléments de structuration section <section> <h2> Section 1 </h2> <section> <h3> Section 1.1 </h3> <section> <h4> Section 1.1.1 </h4> </section> </section> </section> <section> <h2> Section 2 </h2> <section> <h3> Section 2.1 </h3> <p>Lorem Ipsum Dolor Sit Amet.<p> </section> 10
  • 11. Éléments de structuration article • Délimite du contenu ayant son propre sens indépendamment du reste de la page • Ce contenu est distribuable et réutilisable. • Ce contenu peut être un billet de forum, un article de journal, un gadget, un commentaire d'utilisateur. 11
  • 12. Éléments de structuration article <article> <h2> titre de l'article </h2> <section> <h3> Section 1 </h3> <p> lorem ipsum dolor … </p> </section> … </article> 12
  • 13. Éléments de structuration nav • Délimite des liens de navigation inter-pages ou intra-page <nav> <ul> <li><a href="index.html">Accueil</a></li> <li><a href="faq.html">FAQ</a></li> <li><a href="apropos.html">À propos</a></li> <li><a href="services.html">Nos services</a></li> </ul> </nav> 13
  • 14. Éléments de structuration aside • Encapsule du contenu supplémentaire relative à un article, une section ou une page • Peut être : – un glossaire, une citation de l'article ou de la section parent – Liste de blogues lus, liens relatifs pour une page ou un site. • Le contenu ne doit pas être nécessaire à la compréhension de l'article, de la section ou de la page 14
  • 15. Éléments de structuration aside <article> <h1>Titre de l'article</h1> <section> <h2>Section 1</h2> <p> lorem ipsum dolor … </p> </section> <aside> <h2>Glossaire</h2> <dl> <dt>mot 1</dt> <dd>Lorem Ipsum Dolor Sit Amet</dd> <dt>mot 2</dt> <dd>Lorem ipsum dolor sit amet</dd> </dl> </aside> </article> 15
  • 16. Éléments de structuration header • Pour l'entête d'une section et/ou d'une page • Peut contenir le titre principal h1 de la page, une table des matières, un logo, un formulaire de recherche, etc. • Possibilité d’avoir plusieurs header dans une page 16
  • 17. Éléments de structuration header <header> <h1>Le titre le plus important de la page</h1> <nav> <ul> <li><a href="#">Accueil</a></li> <li><a href="#">À propos</a></li> <li><a href="#">Nos produits</a></li> </ul> </nav> </header> <article> <header> <h2>Titre de cet article</h2> </header> <p>...Lorem Ipsum dolor set amet...</p> 17
  • 18. Éléments de structuration footer • Pied de page pour le premier ancêtre parent de type section • Peut contenir l'information sur l'auteur et sur les droits d'auteur • Peut contenir des liens relatifs à la section, des liens vers la carte du site, des liens vers le formulaire de contact, etc. • Ces liens ne doivent pas être délimités par nav. 18
  • 19. Éléments de structuration footer <article> contenu de l’article …. <footer> <p>Cet article a été écrit par … Copyright © … </p> <ul> <li><a href="#">À propos</a></li> <li><a href="#">Nous contacter</a></li> </ul> </footer> </article> 19
  • 20. Éléments conteneurs figure et figcaption • figure sert de conteneur dans lequel s'insèrent divers éléments comme des images, des schémas, des diagrammes ou du code. • figcaption, enfant direct de figure, son rôle est de légender son parent, sous forme de texte et/ou de liens. • figcaption est facultatif et peut se placer avant ou après le contenu principal de figure. <figure> <figcaption>Bobby, le chien de Modou</figcaption> <img src="bobby.jpg" width="304" height="228" /> </figure> 20
  • 21. Éléments conteneurs main • Délimite le contenu principal du document ou de l'application. • Ce contenu doit être unique dans le document, excluant tout contenu qui est répété sur plusieurs documents comme des barres latérales, liens de navigation, informations de copyright, logo du site, et champs de recherche • Un seul élément main dans un document tp1 21
  • 22. Éléments de contenu incorporé video • video permet d’intégrer une vidéo dans une page sans recourir à un plugiciel • L’attribut src : lien vers le fichier de la vidéo • L’attribut autoplay : lecture automatique • L’attribut loop : relecture automatique • L’attribut poster : lien vers une image à présenter pendant que la vidéo se charge ou si elle n'est pas disponible • L’attribut controls : affichage des commandes de lecture • L’attribut preload = auto|metadata|none : préchargement – metadata : nom, format, taille, durée, … – none : aucun – auto (par défaut) : le navigateur décide s'il doit précharger toute la vidéo, uniquement les métadonnées ou rien du tout22
  • 23. Éléments de contenu incorporé video - formats et support Chrome Firefox Opera Safari IE9+ WebM Oui Oui Oui Non Oui mp4 Oui Non Non Oui Oui Ogg Oui Oui Oui Non Non • Il n'y a pas de format vidéo unique qui est supporté par tous les navigateurs. • Fournir plusieurs formats à la fois afin d'assurer le soutien de lecture dans tous les principaux navigateurs. Plateforme utile : http://www.online-convert.com/ • L’élément source, enfant de video, permet de fournir plusieurs versions de la vidéo avec son attribut src. 23
  • 24. Éléments de contenu incorporé video - exemple <video preload="none" controls> <source src="mon_film.mp4" type="video/mp4"> <source src="mon_film.ogv" type="video/ogg"> <source src="mon_film.webm" type="video/webm"> Votre navigateur ne supporte pas la balise video. </video> tp2 24
  • 25. Éléments de contenu incorporé audio • audio permet d’intégrer de l’audio dans une page sans recourir à un plugiciel • L’attribut src : lien vers le fichier audio • L’attribut autoplay : lecture automatique • L’attribut loop : lecture en boucle • L’attribut controls : affichage des commandes de lecture 25
  • 26. Éléments de contenu incorporé audio - formats et support Chrome Firefox Opera Safari IE9+ Wav Oui Non Oui Oui Oui Mp3 Oui Non Non Oui Oui Ogg Oui Oui Oui Non Non Aac Oui Non Non Oui Non • Il n'y a pas de format audio unique qui est supporté par tous les navigateurs. • Fournir plusieurs formats à la fois afin d'assurer le soutien de lecture dans tous les principaux navigateurs. • L’élément source, enfant de audio, permet de fournir plusieurs versions de l’audio avec son attribut src. 26
  • 27. Éléments de contenu incorporé audio - exemple <audio controls="controls"> <source src="concerto_mozart.wav" type="audio/wav" /> <source src="concerto_mozart.ogg" type="audio/ogg" /> <source src="concerto_mozart.mp3" type="audio/mp3" /> <source src="concerto_mozart.aac" type="audio/aac" /> Votre navigateur ne supporte pas la balise audio. </audio> 27
  • 28. Éléments de formulaire champ email • Pour renseigner une ou plusieurs adresses e-mail. • Ce champ attend au minium un caractère (caractère non accentué comprenant les séparateurs tiret ou underscore) suivi d'un @ suivi à son tour d'un caractère. • Un navigateur de SmartPhone compatible avec ce type de champ présentera un clavier adapté incluant les symboles . et @. <input type="email" name="votre_email" /> <input type="email" name="vos_emails[]" multiple="multiple" /> 28
  • 29. Éléments de formulaire champ url • Pour renseigner une URL • Tous les types d'URL sont admis (ftp://, mailto:, http://, …). • Un navigateur de SmartPhone compatible avec ce type de champ présentera un clavier adapté incluant les touches /, . et .com. <input type="url" name="votre_site" /> 29
  • 30. Éléments de formulaire champ tel • Pour renseigner un numéro de téléphone. • Un navigateur de SmartPhone compatible avec ce type de champ présentera un clavier de type numérique. <input type="tel" name="votre_phone" /> 30
  • 31. Éléments de formulaire champ date • Pour renseigner une date • Un navigateur compatible propose une aide au remplissage <input type="date" name="date_naiss" /> 31
  • 32. Éléments de formulaire champ number • Pour renseigner une valeur numérique. • Un navigateur compatible propose deux boutons permettant l'incrémentation et la décrémentation d'une valeur numérique initiale (0 par défaut). • Un Smartphone compatible propose un clavier numérique. • L’attribut step permet de modifier le pas (1 par défaut) de l’incrémentation. • Les attributs min et max permettent de limiter le nombre dans un intervalle défini. <input type="number" name="age" /> 32
  • 33. Éléments de formulaire champ range • Pour renseigner une valeur numérique dans un intervalle donné. • Un navigateur compatible propose un curseur. • L’attribut step permet de modifier le pas (1 par défaut) de l’incrémentation. • Les attributs min et max permettent de limiter le nombre dans un intervalle défini. • Par défaut cet intervalle est [0; 100] <input type="range" name="niveau" /> 33
  • 34. Éléments de formulaire élément datalist • datalist : délimite une liste de suggestions, liée à un élément input. 34 • option : enfant de datalist, définit une suggestion comme valeur de son attribut value • Le champ (input) et la liste de suggestions (datalist + option) sont reliés grâce à la valeur commune des attributs list de l’input et id de la datalist.
  • 35. Éléments de formulaire élément datalist <label for="a">Votre plat préféré</label> <input id="a" list="plat" /> <datalist id="plat"> <option value="tiébou dieune"> <option value="mafé"> <option value="thiou"> <option value="yassa"> <option value="cbon"> </datalist> 35
  • 36. Éléments de formulaire attribut autofocus • Spécifie si le champ doit recevoir automatiquement le curseur au chargement du formulaire <form action="login.php"> Email : <input type="email" name="email" autofocus><br> Mot de passe: <input type="password" name="pass"><br> <input type="submit" value="Connexion" > </form> 36
  • 37. Éléments de formulaire attribut placeholder • Permet d’afficher une valeur indicative dans un champ de texte • Quand l’utilisateur clique dans le champ, contrairement à ce qui se passe avec l’attribut value, le contenu disparaît. • La valeur indicative n'est pas transmise lors de la soumission du formulaire. • NB : La présence d'un placeholder ne dispense pas de renseigner un label pertinent. <input type="text" placeholder="Votre pseudonyme" name="pseudo"/> 37
  • 38. Éléments de formulaire attribut required • Permet de rendre obligatoire le remplissage d'un champ et de bloquer la validation du formulaire si l'un des champs (concernés par cet attribut) n'a pas été renseigné. • NB : L'attribut required ne dispense pas de rajouter, pour chaque champ obligatoire, dans l'étiquette associée une astérisque et de faire précéder le formulaire du message « Les champs indiqués par une * sont obligatoires ». <input type="text" required="required" name="pseudo"/> 38 tp3

Notes de l'éditeur

  1. La Mozilla Foundation, Opera Software et Apple en sont les premiers contributeurs du WHATWG
  2. https://developer.mozilla.org/fr/docs/Web/HTML/formats_media_support
  3. http://techslides.com/sample-webm-ogg-and-mp4-video-files-for-html5
  4. https://developer.mozilla.org/fr/docs/Web/HTML/formats_media_support http://techslides.com/sample-files-for-development