HTML5 La toile mondiale Réseau TCP/IP

Transcription

HTML5 La toile mondiale Réseau TCP/IP
SysCom
SysCom
HTML5
La toile mondiale
Miguel Tomasena
Références :
– http://www.siteduzero.com
– http://www.w3schools.com/html5
– http://www.w3.org/
– html5 Doctor
• WWW (World Wide Web)
1
2
SysCom
SysCom
Réseau
WWW = HTTP + URL + HTML
Qu'est-ce qu'un réseau ?
• HTTP = HyperText Transfer Protocol.
• Un réseau est un ensemble d'ordinateurs et
périphériques connectés les uns avec les autres.
• URL = Uniform Ressource Locator
• HTML = HyperText Markup Language
• Il permet de faire circuler des données selon des
règles bien définies.
3
4
SysCom
SysCom
HTTP
• Communication entre navigateur et serveur :
– Le navigateur effectue une requête HTTP
– Le serveur traite la requête puis envoie une réponse
HTTP
TCP/IP
• Protocole TCP/IP.
– TCP (Transmission Control Protocole), assure que les
paquets de données arrivent à destination dans le bon
ordre,
– IP (Internet Protocole), assure de l'adressage.
• Adresse IP
Ce sont ces adresses que connaissent les ordinateurs pour
communiquer entre eux.
Numéros de 32 bits, composé de 4 nombres entre 0 à 255 (4 fois 8
bits).
Par exemple : 194.153.205.26
5
6
SysCom
SysCom
TCP/IP
Uniform Resource Locator
• DNS - Domain Name Service
Correspondance : adresses IP
L'URL répond à 3 questions:
– où ?
– quoi ?
– comment ?
noms de domaine
Exemple : "fr.wikipedia.org" correspond à "212.85.150.133"
Exemple :
Les noms de domaines sont construits de façon analogue à ceux des
adresses IP : des hiérarchies séparées par points.
Le niveau le plus élevé se trouve à la fin d'un nom de domaine. Il s'agit
d'abréviations qui désignent un pays ou un type.
Exemples : "fr", "de", "com", "net".
Un domaine peut avoir des sous-domaines.
Exemples : "java.page.net", "javascript.page.net".
7
SysCom
Adresse Universelle
http://www.sebsauvage.net/compren
Où ? Dans le serveur www du
Comment ?
dre/index.html
Avec
le protocole
http
domaine : sebsauvage.net.
dans le répertoire
/comprendre/
8
SysCom
Quelques dates
Progression du nombre de serveurs
Nombre de serveur entre 1995 et 2009
• 1967 SGML+DTD (recom.
ISO en 1986)
• 1989 HTML (Tim Berners
au CERN)
• 1990 Web
• 1994 W3C
9
• 1994 Netscape
• 1995 JavaScript
• 1995 Internet Explorer 2.0
• 1996 CSS
Contenu et Forme
• 1998 XML
•Tendance
: séparer
le contenu de forme.
• 2000
XHTML
• Deux langages :
• 2004
Firefox
• HTML pour
le contenu
• CSS pour la forme
• 2008
Google Chrome
• Séparer le contenu (HTML) la forme (CSS) permet :
• 2007
- 2014 HTML5
• une meilleur organisation du contenu,
1
0
SysCom
SysCom
• facilite la mise à jour
• généralise la diffusion vers divers périphériques
1
1
Quoi ? On va
chercher le
fichier
index.html.
1
2
SysCom
SysCom
HTML5
Le balisage :
Qu'est ce que le HTML ?
• Langage de balisage, sous-ensemble de SGML.
• Ensemble d'éléments (balises) dont le nom est défini.
• Balises structurés sous forme d'arbre.
• Langage de description d'un contenu.
• Ce n'est pas un langage de programmation.
• Permet de délimiter clairement des parties de texte pour qu'elles
puissent être reconnues.
• On peut associer à chaque balise des informations additionnels sous
la forme d'attributs.
Caractéristiques de HTML5 :
• Nouvelle balises « structurantes »
• Travaille avec CSS3
• Vidéo et audio
• Graphiques 2D et 3D
• Contrôle de formulaires
• Stockage locale de valeurs
• Premier langage de balisage : SGML Standard Generalised Markup
Language en 1967
1
3
1
4
SysCom
SysCom
HTML5
HTML5
Le balisage en détail :
Le balisage en détail :
• Les balises ont un nom. Elles sont constituées d'une balise ouvrante
et d'une balise fermante.
• Les balises peuvent contenir des attributs composés d'un nom, du
signe = et d'une valeur entre guillemets. Exemple :
• Les balises sont délimitées par < et
<phrase> Cette phrase
<verbe personne="3" nombre="singulier">est</verbe>
un exemple.
</phrase>
>
• Exemple de balise ouvrante : <body> et
une balise fermante : </body>
• Les balises encadrent soit d'autres balises appelés fils, soit du texte.
Exemple :
• Pour représenter certains caractères spéciaux, on utilise des entités.
Une entité commence par & et se termine par ;
<phrase>Cette phrase <verbe>est</verbe> un exemple.</phrase>
1
5
Par exemple, &lt; à la place de <
1
6
SysCom
SysCom
HTML5
Exemple document HTML5 :
Source
1
7
HTML5
<html>
<head>
<title>Titre du document</title>
</head>
<body>
<h1>Titre du document</h1>
<p>Du texte
<img src="photo.jpg" alt="image" />
</p>
<ul>
<li>Un <em>item</em> de liste</li>
<li>Un autre item de liste</li>
<li>Un troisième item de liste</li>
</ul>
</body>
</html>
HTML5
Exemple document HTML :
Affichage :
Source
<html>
<head> <title>Titre du document</title>
<meta charset="utf-8" />
</head>
<body>
<h1>Titre du document</h1>
<p>Du texte
<img src="photo.jpg" alt="image" />
</p>
<ul>
<li>Un <em>item</em> de liste</li>
<li>Un autre item de liste</li>
<li>Un troisième item de liste</li>
</ul>
</body>
1</html>
8
Vue arborescence :
SysCom
SysCom
Bien formé et Valide
Bien formé et Valide
Règles d’écriture d’un document bien formé (conforme à XML) :
• Les balises fermantes sont obligatoires.
On cherche à écrire des documents HTML :
1. Bien Formés et
2. Valides
• Les balises uniques, ou mono balises, se terminent par />
• Les valeurs d'attributs sont toujours encadrées par des
guillemets.
• Les balises et les attributs sont en minuscules
• L'imbrication doit être "bien faite". Exemple d'erreur :
<section> cette division contient un titre <h1> Important ! </section> </h1>
1
9
2
0
SysCom
SysCom
Bien formé et Valide
Intérêt d’avoir un document Bien Formé :
• Simplification de l'analyse.
Bien formé et Valide
XHTML5 : combinaison de HTML5 et XML
• Impose une rigueur dans l'écriture du document.
• Suivi de la syntaxe de XML
Exemple d'un document bien formé.
Est-il valide ?
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Titre de ma page</title>
</head>
<body class="principale">
<p>Paragraphe
<h1>Titre</h1>
</p>
</body>
2 </html>
1
SysCom
2
2
SysCom
Bien formé et Valide
Document valide :
• Les balises et leur imbrication doivent être conformes à la
grammaire sous-jacente de HTML5.
Le validateur du WC3 (http://validator.w3.org/) permet de
vérifier si le code est bien formé et valide.
2
3
Bien formé et Valide
• Exemple de Validateur (http://validator.w3.org/) :
2
4
SysCom
SysCom
Environnement de travail
• Editeurs visuels :
• Dreamweaver (payant)
Structure d'un document HTML5
Plus précisément
XHTML
• Document html5 minimal :
génération automatique
de code
• Nvu ("concurrent" gratuit de Dreamweaver)
• Amaya (gratuit)
début document
racine
• Editeurs classiques :
html
• Notepad++ (windows)
• Gedit (linux)
head
• TextWrangler (MacOS)
2
5
meta
2
6
SysCom
SysCom
Deux grandes familles de balises
• Dans le corps il y a deux types de balises : Bloc et En-Ligne.
• parties entières du document (notion de boîte).
• Paragraphe :
la balise <p> délimite un paragraphe
Exemple, fragment de la page :
<body>
<!-- corps de la page -->
<p>Premier paragraphe</p>
<p>Deuxième paragraphe</p>
</body>
• elles sont précédée et suivie d'un saut de ligne.
• En-Ligne (au fil du texte) mettent en valeur du texte (span, a).
Elles peuvent contenir du texte et d'autres balises En-Ligne, mais
pas de balises de type Bloc.
Exemple paragraphe
2
8
SysCom
SysCom
Saut de ligne
<body>
<p>Premier
paragraphe
</p>
</body>
• Les multiples espaces, sauts de ligne et les tabulations ne sont
pas interprétés (affichés) textuellement.
paragraphe1.html
• Entités caractères permettent le codage de caractères spéciaux :
Saut de ligne : <br/>
Exemple
<body>
<p>Premier <br/>paragraphe
</p>
</body>
Texte
• Le texte (#PCDATA ) est tapé en ligne. La fin de ligne est gérée
par le navigateur.
A l'affichage ?
paragraphe2.html
&lt;
permet d'afficher un "<"
&gt;
idem pour le signe supérieur ">"
&amp;
permet de coder le et commercial "& "
&quot;
sert aux guillemets
&nbsp;
insère un blanc insécable
&euro;
2
9
paragraphe
La balise <body> contient la partie visible du document HTML.
• peuvent contenir : du texte, des balises En-Ligne et des
balises Bloc.
2
7
title
• Attributs génériques (peuvent être utilisés dans toutes les balises) :
id class style title
• Bloc :
• les balises Bloc ont une structure avec une dimension
(hauteur, largeur), des marges internes (padding) et externes
(margin), et surtout une position.
body
3
0
SysCom
SysCom
Les titres
• Titres de hiérarchie différente : <h1>, <h2>, <h3> jusqu'à <h6>.
Les titres
Exemple :
• <h1> signifié "titre très important".
Le choix du niveau du titre doit être fait en
fonction du sens pas de la taille.
• Attention : ne confondez pas avec la balise <title> avec <h1>
titres6.html
3
1
3
2
SysCom
Titre et Paragraphe
SysCom
Exemple fragment du code :
Mise en valeur du texte
Marquer et faire ressortir du texte.
• Balises En-ligne :
• <em> (emphasis) et <strong> marquent l'importance d'une partie
de texte.
• <q> (quote) marque du texte entre guillemets.
• <cite> marque une citation.
• <abbr> marque une abréviation ou un acronyme.
• <dfn> une définition.
3
3
3
4
Exemple paragraphe7
SysCom
SysCom
Mise en valeur du texte
Exemple fragment du code :
em.html
Mise en valeur du texte
• Balises En-ligne :
• <sub> (subscript) et <sup> (superscript) permettent d'écrire en
indice et en exposant.
• <code> permet d'introduire du "code".
• <span> est un élément générique pour marquer du texte. Nous
pouvons lui attribuer une mise en page spécifique à travers les
styles CSS.
• <hr/> (mono-balise) trace une ligne horizontale entre deux bloc .
3
5
3
6
SysCom
SysCom
Mise en valeur du texte
• Exemple fragment du code :
enLigne2.html
Bloc - Division de page
La balise générique <div> sert à regrouper des objets afin de leur
attribuer une mise en forme commune à travers les styles CSS.
• Balise de type Bloc précédée et suivie d'un saut de ligne.
• <div> peut contenir toute sorte de balises (contrairement à <p>).
Se prête bien à la création de la structure d'une page en grands blocs.
ligne horizontale
• Dans html5 div perd d'intérêt au profit de header, footer, nav,
section.
3
7
3
8
Bloc - Bloc de citation
SysCom
SysCom
Bloc - Texte préformaté
• Balise de type Bloc précédée et suivie d'un saut de ligne.
<pre> affiche le texte tel qu'il a été tapé, les espaces, tabulations
et retours chariot sont respectés avec une police à pas fixe.
• Balise de type Bloc précédée et suivie d'un saut de ligne. et hr
(horizontal line) permettent de couper le texte à l'horizontale.
Exemple fragment du code :
Exemple fragment du code :
<blockquote> sert à insérer une citation en retrait d'un paragraphe.
<div>
<h2>Grande maxime</h2>
<p>Comme dirait un grand philosophe du XHTML :</p>
<blockquote>
<!-- Pas de texte directement sous un blockquote -->
<p>To be xhtml or not to be xhtml ?
</p>
</blockquote>
</div>
blockquote.html
3
9
SysCom
<h2>Texte préformaté</h2>
<pre>
||
/==||====\
/
\
/============\
| _
__ |
| | | |__| |
|_|_|______|
</pre>
4
0
Liens hypertexte
• Balises Bloc :
header, footer, nav, section, h1, h2, h3, h4, h5, h6,
p, div, blockquote, pre, hr.
• La puissance de HTML vient du fait qu'il est possible de
donner des liens vers d'autres sections du texte, vers
d'autres pages HTML, ou encore vers d'autres services.
• Balises En-Ligne :
em, strong, q, cite, abbr, dfn, acronym, sub, sup,
code, br, span.
• Les liens sont notés avec la balise a.
• Exemple d'un lien :
Avant de prendre la route cliquez <a href=" . . . "> ici </a>
• Balises génériques :
div et span.
4
1
• <hr /> mono balise de type Bloc affiche une ligne horizontal.
SysCom
Récapitulatif balises
pre.html
• Les liens hypertexte sont de trois types :
• Liens relatifs
• Liens absolus
• Ancres
4
2
SysCom
SysCom
Liens relatifs
Les liens relatifs
• Le chemin pour aller vers le document relié est calculé par
rapport au document lui-même.
Exemples de liens relatifs :
• Exemple de lien vers une autre page située dans le
même répertoire :
• "./" répertoire actuel
• "couleurs.html" identique à "./couleurs.html"
<p>Cliquer <a href="exemple.html">ici</a> pour voir l'exemple.</p>
• "images/graphique.gif" identique à
• Exemple de lien vers une page dans un sous-répertoire :
"./images/graphique.gif"
• "../" répertoire père du répertoire actuel
<p>Cet <a href="Exemples/ex1.html">exemple</a> est le premier.</p>
• L'avantage des liens relatifs :
• ils sont plus courts et
• ils facilitent le déplacement d'un groupe de documents
vers un autre serveur. Les liens restent valides.
4
lien8.html
répertoire ancêtre.
4
4
3
SysCom
• "../../../../ailleurs/fichier.html"
SysCom
Liens absolus
Liens vers des sections
• On utilise des URL (liens absolus) pour indiquer la
localisation des fichiers dans d'autres serveurs.
• Les ancres servent de pointeur sur une partie précise d'un
document HTML.
• Un URL inclut le où ? Le quoi ? Et comment ? de la
ressource à accéder.
• Le nom de l'ancre est indiqué par l'attribut id (obligatoire).
• Exemple :
• Exemples :
<h2 id="conclusion">Pour conclure</h2>
<p>Aller sur le <a href="http://www.univ-savoie.fr/Portail">portail</a>.</p>
• Les liens vers les ancres sont préfixés par le caractère #.
Exemple :
<p>
<a href="http://www.w3schools.com/">Full Web Building Tutorials</a>
</p>
<p>Aller directement à la <a href="#conclusion">conclusion</a></p>
lien9.html
4
5
4
6
SysCom
SysCom
Attributs de <a>
• Quelques autres attributs de la balise <a> :
– accesskey
– tabindex
– type
– title
• Exemples :
4
7
Les images
La plupart des navigateurs Web peuvent afficher des images de
certains formats.
Formats bitmap :
– JPEG (Joint Photographic Experts Group)
– GIF (Graphical Interchange Format)
– PNG (Portable Network Graphics)
lien10.html
<a href="http://www.w3.org/TR/xhtml11/"
accesskey="A" tabindex="1" title="Référence XHTML 1.1 (alt+A)" >
Référence XHTML 1.1
</a>
<a href="lien10.pdf" type="application/pdf" accesskey="B" tabindex="2"
title="document pdf (alt+B)" >
ici
</a>
Formats vectoriels :
– SVG (Scalable Vector Graphics)
– PDF (Portable Document Format)
– FLA/SWF (Flash)
Chaque image prend du temps à être traitée et ralentit
considérablement l'affichage initial du document.
4
8
SysCom
SysCom
Les images
Les images, les sons, les animations
Les images sont insérées avec la mono-balise en-ligne <img />
• On peut faire apparaître les images ou les animations dans
une fenêtre différente lorsque l'utilisateur active un lien.
Attributs obligatoires :
– Le lien vers le fichier contenant l'image : src.
– Texte alternatif : alt.
Ceci correspond à une image externe et est utile si vous ne
souhaitez pas ralentir le chargement du document initial avec
des images importantes en ligne.
Attributs optionnels : height et width.
• Pour inclure un tel lien, il suffit d'ajouter un lien de ce type :
<a href="photo.jpg">
une jolie image
</a>
par défaut : pixels
• Exemple :
<img src="photo.jpg" alt="belle image avion" width="60" />
4
9
• Le placement de l'image : par défaut, l'image est insérée de sorte
que la partie inférieure (bottom) de l'image soit à la même
hauteur que texte.
image10.html
• On utilise la même syntaxe pour les liens sur des animations
et des sons externes. La différence se fait uniquement sur
l'extension du fichier lié.
5
0
SysCom
SysCom
Les images hypertexte
Définition d'une carte avec des zones réactives
• L'image peut être un lien hypertexte. Il suffit d'entourer
l'image avec la balise <a href= …
• La balise <map></map> sert à définir des zones sensibles d'une
image.
• Exemple :
• Exemple :
<map name="MaCarte">
<area shape="rect" href="gauche.html" coords="0,0,35,36" alt="gauche"/>
<area shape="rect" href="droite.html" coords="36,0,65,36" alt="droite" />
</map>
<img src="smile.gif" usemap="#MaCarte" alt="carte'" />
Pour voir mon cv cliquez sur ma photo
<a href="cv.html">
<img src="simile.png" alt="Ma photo" />
</a>
image12.html
image12a.html
5
1
Attributs de area :
alt : texte alternatif obligatoire
shape : nature de la zone décrite ("rect", "circle", "poly")
href : URL appelée lorsqu'on clique sur la zone
coords : coordonnées de la zone décrite
5
2
SysCom
SysCom
Définition d'une carte avec des zones réactives
Image, balise object
Autre alternative avec un programme CGI.
Autre alternative pour insérer une image.
L'attribut ismap de la balise img, permet de repérer la
position de la souris sur le graphique pour exécuter des
actions selon le point du click.
Exemple :
<a href="http://www.univ-savoie.fr/fourniss.php">
<img src="smile.jpg" ismap="ismap" />
</a>
Attention : attribut
La balise <object> </object> sert à insérer un objet
(image, animation, fichier audio, applet java...)
Exemple :
image13.html
<object data="avions.bmp" type="image/bmp" width="200">
<h3>Texte à afficher si pbs</h3>
On donne explicitement
</object>
le type du fichier à insérer
obsolète.
appelle fourniss.php?x,y
où x et y sont les coordonnées pointées.
5
3
Vous pouvez incorporer n'importe quel type de fichier
(texte, vidéo, applet java, musique) si le navigateur
peut l'afficher.
object.html
5
4
SysCom
SysCom
Listes
Listes
• Exemple de fragment de code :
• Balise de type Bloc précédée et suivie d'un saut de ligne.
• Les listes d ’éléments sont très facile à définir.
listes7.html
Trois sont d'usage courant :
<ul> </ul> : liste non numérotée (UNORDERED)
<ol> </ol> : liste numérotée (ORDERED)
<dl> </dl> : liste de définitions
• Les items eux-même sont entourés par <li> (list item) </li>
• Les listes peuvent être imbriquées les unes dans les autres.
5
5
SysCom
5
6
SysCom
Les Tableaux
• Balise :
Les Tableaux
• Exemple fragment de code :
<table> … </table>
– Il faut utiliser <tr> </tr> pour chacune des rangées.
–
notez l'attribut border
Balise pour spécifier les cellules de chaque rangée:
<td> </td>
Illustration des
balises :
5
7
SysCom
SysCom
Tableaux
• Cellules d'entête est mis en valeur (la plupart du temps en
gras et centré): <th> … </th>
• Exemple
• Exemple
tableau14.html
5
9
tableau13.html
5
8
6
0
Tableaux
tableau14.html
SysCom
SysCom
Tableaux
La balise <caption> </caption> sert à définit le titre d'un tableau.
Exemple :
<h1>Tableau avec titre</h1>
<table border="1">
<caption><strong>Associations</strong></caption>
<tr><th>France</th>
<th>Belgique</th>
<th>Suisse</th>
</tr>
<tr>
<td>quatre-vingts</td>
<td>octante</td>
<td>huitante</td> </tr>
<tr>
<td>serpillière</td>
<td>wassingue</td>
<td>panosse</td>
</tr>
</table>
6
1
6
2
tableau16.html
SysCom
Exemple :
Tableaux - groupement lignes
• <thead> <tfoot> et <tbody> permettent de créer des groupes de
lignes.
• Ces balises doivent être utilisées dans l'ordre
thead -> tfoot -> tbody
• thead et tfoot ne peuvent être placés qu'une seule fois dans un
tableau. tbody plusieurs fois si nécessaire.
SysCom
Tableaux - groupement lignes
Tableaux
tableau17.html
"Fusion" de cellules (<td> ou <th>)
• Cellule sur plusieurs colonnes : Attribut colspan
Ex. <table border="1">
<tr><td>C1</td><td>C2</td></tr>
<tr><td colspan="2">C12</td></tr>
</table>
• Cellule sur plusieurs lignes : Attribut rowspan
Ex. <table border="1">
6
3
6
4
<tr><td rowspan="2"> L12</td> <td>L1</td>
</tr>
<tr> <td>L2</td>
</tr>
tableau15.html
Exemple tableau15
</table>