SlideShare une entreprise Scribd logo
1  sur  77
Module : Technologies web 1
HTML 5
HyperText Markup Language 5
1
Objectifs
Apprendre à créer des pages en langage HTML 5
Savoir les principaux apports de HTML5 par rapport à ses prédécesseurs
2
PLAN
3
Structure d’un document HTML5
Une nouvelle sémantique
Les nouveaux éléments de formulaire
Les nouveaux éléments pour les médias
Web Storage
Géolocalisation
Plus d’APS
Structure d’un document HTML5
4
HTML 4.01 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
HTML 4.01 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE html>
Le DOCTYPE
5
<header>
<footer>
<section>
<nav> <aside>
<article>
<div id="header">
<div id="footer">
<div id="content">
<div
id="nav">
<div
id="right">
<div class="article">
Nouvelle Structure
6
Structure d’un document HTML5
<header> l’en-tête
<footer> le pied-de-page
<nav> les principaux liens de navigation
Menus du site
<section> les parties thématiques de la page
<aside> les informations complémentaires
<article> Un article provenant d'une autre page
7
Structure d’un document HTML5
8
Structure d’un document HTML5
9
 La plupart des sites web possèdent en général une en-tête.
 On y trouve le plus souvent
• un logo
• une bannière
• le slogan de votre site…
Structure d’un document HTML5
10
Structure d’un document HTML5
11
Structure d’un document HTML5
12
 À l'inverse de l'en-tête, le pied de page se trouve en général
tout en bas du document.
 On y trouve des informations comme
• des liens de contact,
• le nom de l'auteur
• les mentions légales, etc...
Structure d’un document HTML5
13
Structure d’un document HTML5
14
Structure d’un document HTML5
15
 Regrouper tous les principaux liens de navigation du site.
 Par exemple le menu principal de votre site
Structure d’un document HTML5
16
Structure d’un document HTML5
17
Structure d’un document HTML5
18
 La balise <section> sert à regrouper des contenus en fonction
de leur thématique.
 Elle englobe généralement une portion du contenu au centre
de la page.
Structure d’un document HTML5
19
Structure d’un document HTML5
20
Structure d’un document HTML5
21
 La balise <aside> est conçue pour contenir des informations
complémentaires au document que l'on visualise.
 Ces informations sont généralement placées sur le côté
Structure d’un document HTML5
22
Structure d’un document HTML5
23
Structure d’un document HTML5
24
 Englober une portion généralement autonome de la page.
 C'est une partie de la page qui pourrait ainsi être reprise sur
un autre site.
 Les actualités
 articles de journaux ou de blogs
Structure d’un document HTML5
25
Structure d’un document HTML5
26
Nouvelle sémantique en HTML5
27
<progress>
<canvas>
Rating:
<meter>
<dialog>
<time>
<svg>
<menu>
<command>
<embed>
<figure>
<details>
Et encore ...…
Nouvelle sémantique
<datagrid>
28
Le HTML5 offre de nouvelles balises pour améliorer la hiérarchisation
et la structuration de votre document.
Une nouvelle sémantique
Balise Description
Meter Définit une unité de mesure
Progress Définit une progression
Datagrid
 Élément graphique permettant d'afficher des données récupérées
sur une Base de Données.
Utilisation très simple et rendu final agréable.
Time Définit une unité de temps
Svg Définit une image vectorielle
29
Une nouvelle sémantique
Balise Description
Menu Définit un menu en liste
Command Définit un bouton de commande
Embed
Définit un contenu extérieur (audio, vidéo …)
Figure Définit un groupe d’élément multimédia
Details Définit les détails d’un élément
30
Une nouvelle sémantique
Balise Description
Dialog
 Signale une conversation.
 Contient des éléments dt que l'on utilise pour identifier un locuteur, et
des éléments dd qui contiennent les paroles du locuteur.
Mark Employée pour mettre en avant une partie d'un contenu en appliquant
un style surligné jaune sur le texte qu'elle décrit.
wbr
Définit un saut de ligne possible.
31
32
Une Nouvelle sémantique
<dialog>
<dt>Haythem </dt>
<dd>Bienvenu à Esprit !</dd>
<dt>Mohamed</dt>
<dd>
Merci, vous êtes notre enseignant?
</dd>
<dt>Haythem</dt>
<dd>Oui, je le suis! </dd>
<dt>Mohamed</dt>
<dd>
Quesque vous allez nous enseigner?
</dd>
<dt>Haythem</dt>
<dd>le HTML 5<dd>
</dialog>
Exemple dialog
Les nouveaux élément de formulaire
33
<input type="datetime">
<input type="number">
<input type="range">
<input type="email">
<input type="url">
Et encore…
<input type="text" list="list">
<datalist id="list">
<option value="Mr">
...
</datalist>
Les nouveaux éléments de formulaire
34
Required Fields
<input type="email" required="required">
Regular Expressions
<input type="text" pattern="[A-Za-z0-9_-]+">
Minimum and Maximum Values
<input type="range" min="20" max="80">
MaxLength for textarea
<textarea maxlength="2000"></textarea>
Et encore…
35
Les nouveaux éléments de formulaire
Balise Description
datalist Spécifie une liste de pré-définis pour les options des contrôles d’entrée
keygen
 Définit un champ générateur de clés ( pour les formulaires).
 Générer au sein d'un formulaire une paire de clés de sécurité pour permettre
le cryptage et le décryptage de données échangées.
 La clé privée est conservée en local.
 La clé publique est retournée au serveur.
output
Définit le résultat d’une opération
36
Les nouveaux éléments de formulaire
Les nouveaux éléments de média
37
Les nouveaux éléments pour les
médias
Balise Description
<audio> Définit un contenu audio
<video> Définit une vidéo ou un film
<source>
Définit de multiples ressources pour les médias <video> et
<audio>
<embed>
Définit un conteneur pour une application externe ou un contenu
interactif (un plug-in)
<track>
 Définit des pistes de texte pour les médias <video> et <audio>
 Insére un sous-titre (au format Web Video Text Tracks
(WebVTT) WebVTT) à une vidéo affichée avec la balise video
38
Les nouveaux éléments de média
39
Exemple Balise Video
La balise Canvas en HTML5
40
La balise <canvas>
Balise Description
<canvas>
 Utilisé pour dessiner des graphiques, des dessins, à la volée, via des
scripts (habituellement en JavaScript)
 Ça fournit une API en JavaScript qui permet de faire du dessin
vectoriel, ça fournit une surface sur laquelle on peut dessiner au niveau
binaire un peu à la manière des bitmaps.
41
.
42
Le canvas est une zone rectangulaire dans une page HTML
La balise <canvas>
43
La balise <canvas>
44
La balise <canvas>
45
La balise <canvas>
La balise SVG
 SVG est une recommendation W3C
 SVG est l’abréviation de Scalable Vector Graphics.
 SVG est utilisé pour définir des graphics basés sur des vecteurs sur
le Web
46
 Image vectorielle (ou image en mode trait).
 Image numérique composée d'objets géométriques individuels (segments de
droite, polygones, arcs de cercle, etc.)
 Objets définis chacun par divers attributs de forme, de position, de couleur, etc.
 Se différencie des images matricielles (ou « bitmap »), dans lesquelles on
travaille sur des pixels.
47
La balise SVG
 Les graphiques SVG conservent l’image telle qu’elle est même
quand elle est agrandie ou réduite de taille.
 Chaque élement peut être animé.
 Les images SVG peuvent être imprimées avec une grande qualité
quelque soit la résolution.
48
La balise SVG
Les éléments supprimés ou dépréciés en HTML5
49
Les éléments supprimés ou dépréciés en HTML5
50
<acronym> <applet> <basefont>
<big> <center> <dir>
<font> <frame> <frameset>
<noframes> <strike> <tt> <u>
Drag & Drop
51
Drag & Drop
 Le Drag & Drop est une caractéristique très courante. C'est le
fait d’ attraper un objet et faites-le glisser vers un autre
emplacement.
 En HTML5, Drag and Drop fait partie de la norme, et tout
élément peut être déplacé.
52
<img draggable="true">
 Les méthodes ondragstart and setData() définssent “what to Drag”
 La méthode ondragover définit ou faire le Drop
 La méthode ondrop effectue le Drop
53
Drag & Drop
function drag(ev)
{ ev.dataTransfer.setData("Text",ev.target.id); }
event.preventDefault()
function drop(ev)
{ev.preventDefault();
var data=ev.dataTransfer.getData("Text");
ev.target.appendChild(document.getElementById(data)); }
Web Storage
54
Web Storage
55
Les pages Web peuvent stocker des données localement dans le
navigateur de l'utilisateur.
Avec HTML5, le stockage devient plus sûr et plus rapide..
 Les données ne sont pas inclus avec chaque requête serveur mais utilisé
uniquement lorsque demandé.
Web Storage
56
Possibilité de stocker un grand nombre d’informations sans affecter
les performances du site
Les données sont stockées dans paires clé / valeur, et une page Web
ne peut accéder aux données stockées par elle-même
57
Il y a deux objets pour sauvegarder les informations coté client:
 LocalStorage :
 Sauvegarde les informations sans date d’expiration
 SessionStorage :
 Sauvegarde les informations pour une seule session
Web Storage
if(typeof(Storage)!=="undefined")
{ // LocalStorage et sessionStorage supportés par le navigateur ! }
else
{ // LocalStorage et sessionStorage ne sont pas supportés par
le navigateur ! ..}
Exemple Web Storage
58
<!DOCTYPE html>
<html>
<head><script> A DEVELOPPER</script> </head>
<body>
<p><button onclick="teststorage()" type="button">Click me!</button></p>
<div id="result"> </div>
<p> Cliquer sur le boutton .</p>
<p> Fermer votre navigateur, ouvrez le de nouveau et essayer de vous apercevoir de
ce qui se passe en cliquant sur le bouton. Votre conclusion?</p>
</body>
</html>
59
<script>
function teststorage()
{ if(typeof(Storage)!=="undefined")
else { document.getElementById("result").innerHTML="Désolé, votre navigateur ne
supporte pas le web storage..."; } }
</script>
Exemple Web Storage
{ if (localStorage.clickcount)
{ localStorage.clickcount= Number(localStorage.clickcount)+1; }
else { localStorage.clickcount=1;}
document.getElementById("result").innerHTML=" Vous avez cliqué sur le bouton "
+ localStorage.clickcount + " fois "; }
 Refaire le même exemple en utilisant l’objet SessionStorage
au lieu d’ultiliser l’objet LocalStorage.
 Quesque vous remarquez?
60
Exercice
Géolocalisation
61
62
L’API de Geo-localisation de HTML 5 est utilisée pour avoir la position géo-
graphique de l’utilisateur.
La position ne peut pas être obtenue que lorsque l’utlisateur accepte de partager
sa localisation.
Géolocalisation
 La méthode getCurrentPosition()
 Traitement des erreurs et des rejections
 Afficher le résultat sur un Map
63
Géolocalisation
 La méthode getCurrentPosition()
 Traitement des erreurs et des rejections
 Afficher le résultat sur un Map
64
Géolocalisation
65
• getCurrentPosition() method sert à indiquer la position de l’utilisateur (exemple1)
Géolocalisation
66
<!DOCTYPE html>
<html>
<body>
<p id="demo">Click the button to get your coordinates:</p>
<button onclick="getLocation()"> Try It </button>
</body>
<script>//A faire……………………………</script>
</html>
EXEMPLE BASIQUE
Géolocalisation
67
<script>
var x=document.getElementById ("demo");
</script>
function showPosition (position)
{ x.innerHTML="Latitude: " + position.coords.latitude + "<br>Longitude: " +
position.coords.longitude; }
function getLocation()
{ if (navigator.geolocation)
{ navigator.geolocation.getCurrentPosition(showPosition); }
else {x.innerHTML="Geolocation is not supported by this browser.";} }
Géolocalisation
 La méthode getCurrentPosition()
 Traitement des erreurs et des rejections
 Afficher le résultat sur un Map
68
Géolocalisation
69
Géolocalisation
function showError(error)
{
switch(error.code)
{ case error.PERMISSION_DENIED:
x.innerHTML="User denied the request for Geolocation." break;
case error.POSITION_UNAVAILABLE:
x.innerHTML="Location information is unavailable." break;
case error.TIMEOUT:
x.innerHTML="The request to get user location timed out." break;
case error.UNKNOWN_ERROR:
x.innerHTML="An unknown error occurred." break; }
}
 La méthode getCurrentPosition()
 Traitement des erreurs et des rejections
 Afficher le résultat sur un Map
70
Géolocalisation
71
Géolocalisation
function showPosition(position)
{
var latlon=position.coords.latitude+","+position.coords.longitude;
var img_url="http://maps.googleapis.com/maps/api/staticmap?center="
+latlon+"&zoom=14&size=400x300&sensor=false";
document.getElementById("mapholder").innerHTML="<img src='"+img_url+"'>";
}
Plus d’Apis (Web Workers)
72
Web Workers
73
 En exécutant des scripts dans une page HTML la page ne répond pas
jusqu’à la fin du script.
 Le Web Worker correspond à un script " Javascript " qui tourne en "back-
ground " indépendamment des autres scripts sans perturber les performances
de la page.
Possibilité de cliquer, sélectionner et faire les autres fonctionnalités quand
le web worker tourne en "back-ground".
Web Workers
74
Exemple :
75
var i=0;
function timedCount()
{
i=i+1;
postMessage(i);
setTimeout("timedCount()",500);
}
timedCount();
Créer un Web Worker dans un fichier JavaScript externe HR.js :
Web Workers
76
if (typeof(w)=="undefined")
{ w=new Worker(“HR.js"); }
Créer un Objet Web Worker
Web Workers
Envoyer et recevoir des messages du Web Worker
w.Onmessage = function(event){
document.getElementById("result").innerHTML=event.data; };
Envoyer et recevoir des messages du Web Worker
w.terminate();
77

Contenu connexe

Similaire à cours-introduction-dfggghhha-html-5.pptx

HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!CARA_Lyon
 
HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!CARA_Lyon
 
developpement web HTML & CSS web Sémantique
developpement web HTML & CSS web Sémantiquedeveloppement web HTML & CSS web Sémantique
developpement web HTML & CSS web SémantiqueYounesOuladSayad1
 
Les dernières avancées HTML5 & CSS3 en action !
Les dernières avancées HTML5 & CSS3 en action !Les dernières avancées HTML5 & CSS3 en action !
Les dernières avancées HTML5 & CSS3 en action !Microsoft Technet France
 
Les dernières avancées html5 & css3 en action !
Les dernières avancées html5 & css3 en action !Les dernières avancées html5 & css3 en action !
Les dernières avancées html5 & css3 en action !davrous
 
Jquery - introduction au langage
Jquery - introduction au langageJquery - introduction au langage
Jquery - introduction au langageStrasWeb
 
technologie web - part2
technologie web - part2technologie web - part2
technologie web - part2Benoît Simard
 
Codedarmor 2012 - 06/03 - HTML5, CSS3 et Javascript
Codedarmor 2012 - 06/03 - HTML5, CSS3 et JavascriptCodedarmor 2012 - 06/03 - HTML5, CSS3 et Javascript
Codedarmor 2012 - 06/03 - HTML5, CSS3 et Javascriptcodedarmor
 
XebiCon'17 : Entrevue avec Vue.js - Thomas Champion et Ludovic Ladeu
XebiCon'17 : Entrevue avec Vue.js - Thomas Champion et Ludovic LadeuXebiCon'17 : Entrevue avec Vue.js - Thomas Champion et Ludovic Ladeu
XebiCon'17 : Entrevue avec Vue.js - Thomas Champion et Ludovic LadeuPublicis Sapient Engineering
 
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 2/3 - HTML5 / CSS3 / Twitter...
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 2/3 - HTML5 / CSS3 / Twitter...ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 2/3 - HTML5 / CSS3 / Twitter...
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 2/3 - HTML5 / CSS3 / Twitter...Horacio Gonzalez
 
Conception Web Avec Dreamweaver
Conception Web Avec DreamweaverConception Web Avec Dreamweaver
Conception Web Avec Dreamweaverdavidbx
 
M20480 formation-programmer-en-html5-avec-javascript-et-css3
M20480 formation-programmer-en-html5-avec-javascript-et-css3M20480 formation-programmer-en-html5-avec-javascript-et-css3
M20480 formation-programmer-en-html5-avec-javascript-et-css3CERTyou Formation
 
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
 
Création d'une application html5 utilisant canvas, svg et les animations css3
Création d'une application html5 utilisant canvas, svg et les animations css3Création d'une application html5 utilisant canvas, svg et les animations css3
Création d'une application html5 utilisant canvas, svg et les animations css3davrous
 
Dw005 formation-dreamweaver-cc-les-bases
Dw005 formation-dreamweaver-cc-les-basesDw005 formation-dreamweaver-cc-les-bases
Dw005 formation-dreamweaver-cc-les-basesCERTyou Formation
 
1-Introduction JQuery.pptx
1-Introduction JQuery.pptx1-Introduction JQuery.pptx
1-Introduction JQuery.pptxlaabid1
 

Similaire à cours-introduction-dfggghhha-html-5.pptx (20)

HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!
 
HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!
 
developpement web HTML & CSS web Sémantique
developpement web HTML & CSS web Sémantiquedeveloppement web HTML & CSS web Sémantique
developpement web HTML & CSS web Sémantique
 
Tapestry
TapestryTapestry
Tapestry
 
Les dernières avancées HTML5 & CSS3 en action !
Les dernières avancées HTML5 & CSS3 en action !Les dernières avancées HTML5 & CSS3 en action !
Les dernières avancées HTML5 & CSS3 en action !
 
Les dernières avancées html5 & css3 en action !
Les dernières avancées html5 & css3 en action !Les dernières avancées html5 & css3 en action !
Les dernières avancées html5 & css3 en action !
 
Jquery - introduction au langage
Jquery - introduction au langageJquery - introduction au langage
Jquery - introduction au langage
 
technologie web - part2
technologie web - part2technologie web - part2
technologie web - part2
 
Codedarmor 2012 - 06/03 - HTML5, CSS3 et Javascript
Codedarmor 2012 - 06/03 - HTML5, CSS3 et JavascriptCodedarmor 2012 - 06/03 - HTML5, CSS3 et Javascript
Codedarmor 2012 - 06/03 - HTML5, CSS3 et Javascript
 
XebiCon'17 : Entrevue avec Vue.js - Thomas Champion et Ludovic Ladeu
XebiCon'17 : Entrevue avec Vue.js - Thomas Champion et Ludovic LadeuXebiCon'17 : Entrevue avec Vue.js - Thomas Champion et Ludovic Ladeu
XebiCon'17 : Entrevue avec Vue.js - Thomas Champion et Ludovic Ladeu
 
Cours html5
Cours html5Cours html5
Cours html5
 
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 2/3 - HTML5 / CSS3 / Twitter...
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 2/3 - HTML5 / CSS3 / Twitter...ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 2/3 - HTML5 / CSS3 / Twitter...
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 2/3 - HTML5 / CSS3 / Twitter...
 
Conception Web Avec Dreamweaver
Conception Web Avec DreamweaverConception Web Avec Dreamweaver
Conception Web Avec Dreamweaver
 
HTML5, le nouveau buzzword
HTML5, le nouveau buzzwordHTML5, le nouveau buzzword
HTML5, le nouveau buzzword
 
M20480 formation-programmer-en-html5-avec-javascript-et-css3
M20480 formation-programmer-en-html5-avec-javascript-et-css3M20480 formation-programmer-en-html5-avec-javascript-et-css3
M20480 formation-programmer-en-html5-avec-javascript-et-css3
 
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
 
Création d'une application html5 utilisant canvas, svg et les animations css3
Création d'une application html5 utilisant canvas, svg et les animations css3Création d'une application html5 utilisant canvas, svg et les animations css3
Création d'une application html5 utilisant canvas, svg et les animations css3
 
HTML5 en Entreprise
HTML5 en EntrepriseHTML5 en Entreprise
HTML5 en Entreprise
 
Dw005 formation-dreamweaver-cc-les-bases
Dw005 formation-dreamweaver-cc-les-basesDw005 formation-dreamweaver-cc-les-bases
Dw005 formation-dreamweaver-cc-les-bases
 
1-Introduction JQuery.pptx
1-Introduction JQuery.pptx1-Introduction JQuery.pptx
1-Introduction JQuery.pptx
 

Dernier

Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipM2i Formation
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETMedBechir
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptxTxaruka
 
Guide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeGuide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeBenamraneMarwa
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxMartin M Flynn
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxrababouerdighi
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertChristianMbip
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptxSAID MASHATE
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxAsmaa105193
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .Txaruka
 
7 PPT sue le project de fin d'étude.pptx
7 PPT sue le project de fin d'étude.pptx7 PPT sue le project de fin d'étude.pptx
7 PPT sue le project de fin d'étude.pptxrababouerdighi
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETMedBechir
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.Franck Apolis
 

Dernier (15)

Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadership
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSET
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptx
 
Guide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeGuide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étude
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptx
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptx
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expert
 
Pâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie PelletierPâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie Pelletier
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
 
Evaluación Alumnos de Ecole Victor Hugo
Evaluación Alumnos de Ecole  Victor HugoEvaluación Alumnos de Ecole  Victor Hugo
Evaluación Alumnos de Ecole Victor Hugo
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. Marocpptx
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
 
7 PPT sue le project de fin d'étude.pptx
7 PPT sue le project de fin d'étude.pptx7 PPT sue le project de fin d'étude.pptx
7 PPT sue le project de fin d'étude.pptx
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.
 

cours-introduction-dfggghhha-html-5.pptx

  • 1. Module : Technologies web 1 HTML 5 HyperText Markup Language 5 1
  • 2. Objectifs Apprendre à créer des pages en langage HTML 5 Savoir les principaux apports de HTML5 par rapport à ses prédécesseurs 2
  • 3. PLAN 3 Structure d’un document HTML5 Une nouvelle sémantique Les nouveaux éléments de formulaire Les nouveaux éléments pour les médias Web Storage Géolocalisation Plus d’APS
  • 5. HTML 4.01 Strict <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> HTML 4.01 Strict <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <!DOCTYPE html> Le DOCTYPE 5
  • 6. <header> <footer> <section> <nav> <aside> <article> <div id="header"> <div id="footer"> <div id="content"> <div id="nav"> <div id="right"> <div class="article"> Nouvelle Structure 6
  • 7. Structure d’un document HTML5 <header> l’en-tête <footer> le pied-de-page <nav> les principaux liens de navigation Menus du site <section> les parties thématiques de la page <aside> les informations complémentaires <article> Un article provenant d'une autre page 7
  • 10.  La plupart des sites web possèdent en général une en-tête.  On y trouve le plus souvent • un logo • une bannière • le slogan de votre site… Structure d’un document HTML5 10
  • 13.  À l'inverse de l'en-tête, le pied de page se trouve en général tout en bas du document.  On y trouve des informations comme • des liens de contact, • le nom de l'auteur • les mentions légales, etc... Structure d’un document HTML5 13
  • 16.  Regrouper tous les principaux liens de navigation du site.  Par exemple le menu principal de votre site Structure d’un document HTML5 16
  • 19.  La balise <section> sert à regrouper des contenus en fonction de leur thématique.  Elle englobe généralement une portion du contenu au centre de la page. Structure d’un document HTML5 19
  • 22.  La balise <aside> est conçue pour contenir des informations complémentaires au document que l'on visualise.  Ces informations sont généralement placées sur le côté Structure d’un document HTML5 22
  • 25.  Englober une portion généralement autonome de la page.  C'est une partie de la page qui pourrait ainsi être reprise sur un autre site.  Les actualités  articles de journaux ou de blogs Structure d’un document HTML5 25
  • 28. <progress> <canvas> Rating: <meter> <dialog> <time> <svg> <menu> <command> <embed> <figure> <details> Et encore ...… Nouvelle sémantique <datagrid> 28 Le HTML5 offre de nouvelles balises pour améliorer la hiérarchisation et la structuration de votre document.
  • 29. Une nouvelle sémantique Balise Description Meter Définit une unité de mesure Progress Définit une progression Datagrid  Élément graphique permettant d'afficher des données récupérées sur une Base de Données. Utilisation très simple et rendu final agréable. Time Définit une unité de temps Svg Définit une image vectorielle 29
  • 30. Une nouvelle sémantique Balise Description Menu Définit un menu en liste Command Définit un bouton de commande Embed Définit un contenu extérieur (audio, vidéo …) Figure Définit un groupe d’élément multimédia Details Définit les détails d’un élément 30
  • 31. Une nouvelle sémantique Balise Description Dialog  Signale une conversation.  Contient des éléments dt que l'on utilise pour identifier un locuteur, et des éléments dd qui contiennent les paroles du locuteur. Mark Employée pour mettre en avant une partie d'un contenu en appliquant un style surligné jaune sur le texte qu'elle décrit. wbr Définit un saut de ligne possible. 31
  • 32. 32 Une Nouvelle sémantique <dialog> <dt>Haythem </dt> <dd>Bienvenu à Esprit !</dd> <dt>Mohamed</dt> <dd> Merci, vous êtes notre enseignant? </dd> <dt>Haythem</dt> <dd>Oui, je le suis! </dd> <dt>Mohamed</dt> <dd> Quesque vous allez nous enseigner? </dd> <dt>Haythem</dt> <dd>le HTML 5<dd> </dialog> Exemple dialog
  • 33. Les nouveaux élément de formulaire 33
  • 34. <input type="datetime"> <input type="number"> <input type="range"> <input type="email"> <input type="url"> Et encore… <input type="text" list="list"> <datalist id="list"> <option value="Mr"> ... </datalist> Les nouveaux éléments de formulaire 34
  • 35. Required Fields <input type="email" required="required"> Regular Expressions <input type="text" pattern="[A-Za-z0-9_-]+"> Minimum and Maximum Values <input type="range" min="20" max="80"> MaxLength for textarea <textarea maxlength="2000"></textarea> Et encore… 35 Les nouveaux éléments de formulaire
  • 36. Balise Description datalist Spécifie une liste de pré-définis pour les options des contrôles d’entrée keygen  Définit un champ générateur de clés ( pour les formulaires).  Générer au sein d'un formulaire une paire de clés de sécurité pour permettre le cryptage et le décryptage de données échangées.  La clé privée est conservée en local.  La clé publique est retournée au serveur. output Définit le résultat d’une opération 36 Les nouveaux éléments de formulaire
  • 37. Les nouveaux éléments de média 37
  • 38. Les nouveaux éléments pour les médias Balise Description <audio> Définit un contenu audio <video> Définit une vidéo ou un film <source> Définit de multiples ressources pour les médias <video> et <audio> <embed> Définit un conteneur pour une application externe ou un contenu interactif (un plug-in) <track>  Définit des pistes de texte pour les médias <video> et <audio>  Insére un sous-titre (au format Web Video Text Tracks (WebVTT) WebVTT) à une vidéo affichée avec la balise video 38
  • 39. Les nouveaux éléments de média 39 Exemple Balise Video
  • 40. La balise Canvas en HTML5 40
  • 41. La balise <canvas> Balise Description <canvas>  Utilisé pour dessiner des graphiques, des dessins, à la volée, via des scripts (habituellement en JavaScript)  Ça fournit une API en JavaScript qui permet de faire du dessin vectoriel, ça fournit une surface sur laquelle on peut dessiner au niveau binaire un peu à la manière des bitmaps. 41
  • 42. . 42 Le canvas est une zone rectangulaire dans une page HTML La balise <canvas>
  • 46. La balise SVG  SVG est une recommendation W3C  SVG est l’abréviation de Scalable Vector Graphics.  SVG est utilisé pour définir des graphics basés sur des vecteurs sur le Web 46
  • 47.  Image vectorielle (ou image en mode trait).  Image numérique composée d'objets géométriques individuels (segments de droite, polygones, arcs de cercle, etc.)  Objets définis chacun par divers attributs de forme, de position, de couleur, etc.  Se différencie des images matricielles (ou « bitmap »), dans lesquelles on travaille sur des pixels. 47 La balise SVG
  • 48.  Les graphiques SVG conservent l’image telle qu’elle est même quand elle est agrandie ou réduite de taille.  Chaque élement peut être animé.  Les images SVG peuvent être imprimées avec une grande qualité quelque soit la résolution. 48 La balise SVG
  • 49. Les éléments supprimés ou dépréciés en HTML5 49
  • 50. Les éléments supprimés ou dépréciés en HTML5 50 <acronym> <applet> <basefont> <big> <center> <dir> <font> <frame> <frameset> <noframes> <strike> <tt> <u>
  • 52. Drag & Drop  Le Drag & Drop est une caractéristique très courante. C'est le fait d’ attraper un objet et faites-le glisser vers un autre emplacement.  En HTML5, Drag and Drop fait partie de la norme, et tout élément peut être déplacé. 52 <img draggable="true">
  • 53.  Les méthodes ondragstart and setData() définssent “what to Drag”  La méthode ondragover définit ou faire le Drop  La méthode ondrop effectue le Drop 53 Drag & Drop function drag(ev) { ev.dataTransfer.setData("Text",ev.target.id); } event.preventDefault() function drop(ev) {ev.preventDefault(); var data=ev.dataTransfer.getData("Text"); ev.target.appendChild(document.getElementById(data)); }
  • 55. Web Storage 55 Les pages Web peuvent stocker des données localement dans le navigateur de l'utilisateur. Avec HTML5, le stockage devient plus sûr et plus rapide..  Les données ne sont pas inclus avec chaque requête serveur mais utilisé uniquement lorsque demandé.
  • 56. Web Storage 56 Possibilité de stocker un grand nombre d’informations sans affecter les performances du site Les données sont stockées dans paires clé / valeur, et une page Web ne peut accéder aux données stockées par elle-même
  • 57. 57 Il y a deux objets pour sauvegarder les informations coté client:  LocalStorage :  Sauvegarde les informations sans date d’expiration  SessionStorage :  Sauvegarde les informations pour une seule session Web Storage if(typeof(Storage)!=="undefined") { // LocalStorage et sessionStorage supportés par le navigateur ! } else { // LocalStorage et sessionStorage ne sont pas supportés par le navigateur ! ..}
  • 58. Exemple Web Storage 58 <!DOCTYPE html> <html> <head><script> A DEVELOPPER</script> </head> <body> <p><button onclick="teststorage()" type="button">Click me!</button></p> <div id="result"> </div> <p> Cliquer sur le boutton .</p> <p> Fermer votre navigateur, ouvrez le de nouveau et essayer de vous apercevoir de ce qui se passe en cliquant sur le bouton. Votre conclusion?</p> </body> </html>
  • 59. 59 <script> function teststorage() { if(typeof(Storage)!=="undefined") else { document.getElementById("result").innerHTML="Désolé, votre navigateur ne supporte pas le web storage..."; } } </script> Exemple Web Storage { if (localStorage.clickcount) { localStorage.clickcount= Number(localStorage.clickcount)+1; } else { localStorage.clickcount=1;} document.getElementById("result").innerHTML=" Vous avez cliqué sur le bouton " + localStorage.clickcount + " fois "; }
  • 60.  Refaire le même exemple en utilisant l’objet SessionStorage au lieu d’ultiliser l’objet LocalStorage.  Quesque vous remarquez? 60 Exercice
  • 62. 62 L’API de Geo-localisation de HTML 5 est utilisée pour avoir la position géo- graphique de l’utilisateur. La position ne peut pas être obtenue que lorsque l’utlisateur accepte de partager sa localisation. Géolocalisation
  • 63.  La méthode getCurrentPosition()  Traitement des erreurs et des rejections  Afficher le résultat sur un Map 63 Géolocalisation
  • 64.  La méthode getCurrentPosition()  Traitement des erreurs et des rejections  Afficher le résultat sur un Map 64 Géolocalisation
  • 65. 65 • getCurrentPosition() method sert à indiquer la position de l’utilisateur (exemple1) Géolocalisation
  • 66. 66 <!DOCTYPE html> <html> <body> <p id="demo">Click the button to get your coordinates:</p> <button onclick="getLocation()"> Try It </button> </body> <script>//A faire……………………………</script> </html> EXEMPLE BASIQUE Géolocalisation
  • 67. 67 <script> var x=document.getElementById ("demo"); </script> function showPosition (position) { x.innerHTML="Latitude: " + position.coords.latitude + "<br>Longitude: " + position.coords.longitude; } function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition); } else {x.innerHTML="Geolocation is not supported by this browser.";} } Géolocalisation
  • 68.  La méthode getCurrentPosition()  Traitement des erreurs et des rejections  Afficher le résultat sur un Map 68 Géolocalisation
  • 69. 69 Géolocalisation function showError(error) { switch(error.code) { case error.PERMISSION_DENIED: x.innerHTML="User denied the request for Geolocation." break; case error.POSITION_UNAVAILABLE: x.innerHTML="Location information is unavailable." break; case error.TIMEOUT: x.innerHTML="The request to get user location timed out." break; case error.UNKNOWN_ERROR: x.innerHTML="An unknown error occurred." break; } }
  • 70.  La méthode getCurrentPosition()  Traitement des erreurs et des rejections  Afficher le résultat sur un Map 70 Géolocalisation
  • 71. 71 Géolocalisation function showPosition(position) { var latlon=position.coords.latitude+","+position.coords.longitude; var img_url="http://maps.googleapis.com/maps/api/staticmap?center=" +latlon+"&zoom=14&size=400x300&sensor=false"; document.getElementById("mapholder").innerHTML="<img src='"+img_url+"'>"; }
  • 72. Plus d’Apis (Web Workers) 72
  • 73. Web Workers 73  En exécutant des scripts dans une page HTML la page ne répond pas jusqu’à la fin du script.  Le Web Worker correspond à un script " Javascript " qui tourne en "back- ground " indépendamment des autres scripts sans perturber les performances de la page. Possibilité de cliquer, sélectionner et faire les autres fonctionnalités quand le web worker tourne en "back-ground".
  • 76. 76 if (typeof(w)=="undefined") { w=new Worker(“HR.js"); } Créer un Objet Web Worker Web Workers Envoyer et recevoir des messages du Web Worker w.Onmessage = function(event){ document.getElementById("result").innerHTML=event.data; }; Envoyer et recevoir des messages du Web Worker w.terminate();
  • 77. 77

Notes de l'éditeur

  1. Le langage HTML est un langage à balises : <balise> texte </balise> Chaque balise a une signification particulière.
  2. Texte Images Liens Hypertextes Tableaux Formulaires
  3. *avec HTML5 , le doctype devient <!DOCTYPE html> alors que avant, on spécifiait les modes stricts, transitionnels, etc... dans les doctype. *il est nécessaire d'inclure le DOCTYPE correspondant à la version de XHTML utilisée, afin que les navigateurs puissent adapter leur rendu de la page *Transitional indique au navigateur que la page utilise la syntaxe XHTML connue, mais utilise certains éléments en provenance de HTML4. Ce DOCTYPE permet aux sites en HTML4 de passer en XHTML 1.0 avec un minimum d'efforts. En quelque sorte, Transitionnal correspond à du XHTML affiché comme du HTML 4. *Strict, de son côté, déclenche chez les navigateurs récents le mode... Strict, bien plus rigoureux. Pour commencer, il considère l'utilisation de certaines balises issues de HTML4 comme malvenues, et en leur présence repasse en mode Quirks, ce qui n'est pas souhaitable. Ces balises éliminées sont dir, menu, center, isindex, applet, font, basefont, s, strike, u, iframe et noframes. Par ailleurs, nombre d'attributs se voient pareillement refusés. Strict correspond donc, comme on peut s'attendre, au niveau supérieur de la conception XHTML, tandis que Transtional permet la transition en douceur entre HTML et XHTML.
  4. Le terme div est pour division; un moyen de diviser ta page en différentes zones. C'est tout simplement une « partie » de ta page HTML. L’HTML5 introduit également un ensemble de nouvelles balises afin de donner plus de sémantique (de sens) à nos pages. Par exemple, au lieu d’utiliser une <div> avec un id=”header”, nous pouvons utiliser tout simplement la balise <header>. Parmi ces balises sémantiques on trouve entre autres <header> : Qui indique que l’élément est une en-tête <footer> : Qui indique que l’élément est un pied-de-page <nav> : Qui indique un élément de navigation tel qu’un menu <aside> : Qui correspond à une zone secondaire non liée au contenu principal de la page <article> : Qui représente une portion de la page qui garde un sens même séparée de l’ensemble de la page (comme un article de blog par exemple)
  5. Meter: Définit une unité de mesure Progress: Définit une progression Datagrid: Le DataGrid est un élément graphique qui va nous permettre d'afficher des données récupérées sur une Base de Données. Sont utilisation est très simple et le rendu final est agréable. Time:Définit une unité de temps Svg:Définit une image vectorielle Menu: Définit un menu en liste Command: Définit un bouton de commande Embed:Définit un contenu extérieur (audio, vidéo …) Figure: Définit un groupe d’élément multimédia Details:Définit les détails d’un élément Dialog: L'élément dialog signale une conversation. Il contient des éléments dt que l'on utilise pour identifier un locuteur, ainsi que des éléments dd qui contiennent les paroles du locuteur. Par exemple:
  6. Meter: Définit une unité de mesure Progress: Définit une progression Datagrid: Le DataGrid est un élément graphique qui va nous permettre d'afficher des données récupérées sur une Base de Données. Sont utilisation est très simple et le rendu final est agréable. Time:Définit une unité de temps Svg:Définit une image vectorielle Menu: Définit un menu en liste Command: Définit un bouton de commande Embed:Définit un contenu extérieur (audio, vidéo …) Figure: Définit un groupe d’élément multimédia Details:Définit les détails d’un élément Dialog: L'élément dialog signale une conversation. Il contient des éléments dt que l'on utilise pour identifier un locuteur, ainsi que des éléments dd qui contiennent les paroles du locuteur. Par exemple:
  7. Meter: Définit une unité de mesure Progress: Définit une progression Datagrid: Le DataGrid est un élément graphique qui va nous permettre d'afficher des données récupérées sur une Base de Données. Sont utilisation est très simple et le rendu final est agréable. Time:Définit une unité de temps Svg:Définit une image vectorielle Menu: Définit un menu en liste Command: Définit un bouton de commande Embed:Définit un contenu extérieur (audio, vidéo …) Figure: Définit un groupe d’élément multimédia Details:Définit les détails d’un élément Dialog: L'élément dialog signale une conversation. Il contient des éléments dt que l'on utilise pour identifier un locuteur, ainsi que des éléments dd qui contiennent les paroles du locuteur. Par exemple:
  8. Meter: Définit une unité de mesure Progress: Définit une progression Datagrid: Le DataGrid est un élément graphique qui va nous permettre d'afficher des données récupérées sur une Base de Données. Sont utilisation est très simple et le rendu final est agréable. Time:Définit une unité de temps Svg:Définit une image vectorielle Menu: Définit un menu en liste Command: Définit un bouton de commande Embed:Définit un contenu extérieur (audio, vidéo …) Figure: Définit un groupe d’élément multimédia Details:Définit les détails d’un élément Dialog: L'élément dialog signale une conversation. Il contient des éléments dt que l'on utilise pour identifier un locuteur, ainsi que des éléments dd qui contiennent les paroles du locuteur. Par exemple:
  9. http://www.quackit.com/html_5/tags/html_meter_tag.cfm
  10. Les bouveaux controls
  11. Client-Side Form Validation
  12. Meter: Définit une unité de mesure Progress: Définit une progression Datagrid: Le DataGrid est un élément graphique qui va nous permettre d'afficher des données récupérées sur une Base de Données. Sont utilisation est très simple et le rendu final est agréable. Time:Définit une unité de temps Svg:Définit une image vectorielle Menu: Définit un menu en liste Command: Définit un bouton de commande Embed:Définit un contenu extérieur (audio, vidéo …) Figure: Définit un groupe d’élément multimédia Details:Définit les détails d’un élément Dialog: L'élément dialog signale une conversation. Il contient des éléments dt que l'on utilise pour identifier un locuteur, ainsi que des éléments dd qui contiennent les paroles du locuteur. Par exemple:
  13. Balise Video
  14. Exemples d’utilisation de canvas: http://mudcu.be/sketchpad/ http://slides.html5rocks.com/#svg-example-slide
  15. Example explained: Check if Geolocation is supported If supported, run the getCurrentPosition() method. If not, display a message to the user If the getCurrentPosition() method is successful, it returns a coordinates object to the function specified in the parameter ( showPosition ) The showPosition() function gets the displays the Latitude and Longitude The example above is a very basic Geolocation script, with no error handling.
  16. Error Codes: Permission denied - The user did not allow Geolocation Position unavailable - It is not possible to get the current location Timeout - The operation timed out
  17. The important part of the code above is the postMessage() method - which is used to posts a message back to the HTML page. Note: Normally web workers are not used for such simple scripts, but for more CPU intensive tasks.
  18. Then we can send and receive messages from the web worker. Add an "onmessage" event listener to the web worker. When a web worker object is created, it will continue to listen for messages (even after the external script is finished) until it is terminated. To terminate a web worker, and free browser/computer resources, use the terminate() method: