Beruflich Dokumente
Kultur Dokumente
& jQuery
Michel Martin
Table des matires III
Table des matires
Introduction ......................................................................................................VII
Les sources de louvrage .................................................................................................................VII
Site compagnon ..................................................................................................................................VII
Rubriques spciales de ce livre .................................................................................................... VIII
Joindre lauteur ................................................................................................................................. VIII
1. Avant de commencer......................................................................................1
Mais, au fait, quest-ce quun site Web? ......................................................................................... 1
Quapporte chaque langage? ......................................................................................................... 2
Vocabulaire et conventions dcriture ............................................................................................ 3
Compatibilit HTML5/CSS3 ............................................................................................................... 4
Les outils de dveloppement ............................................................................................................ 6
Votre premire page HTML avec Notepad++ ............................................................................... 7
Premier contact avec le langage CSS3 ........................................................................................ 12
Pourquoi prfrer CSS HTML pour la mise en forme? ......................................................... 15
Premier contact avec jQuery ........................................................................................................... 16
HTML, CSS et jQuery: deux approches ....................................................................................... 18
2. Premiers pas en HTML, CSS et jQuery ..................................................... 21
Les bases du HTML ........................................................................................................................... 21
Les bases du CSS .............................................................................................................................. 29
Les bases de jQuery ..........................................................................................................................37
Exercice 1 ............................................................................................................................................. 42
3. lments textuels ........................................................................................43
Les balises permettant dafcher du texte ..................................................................................43
Listes HTML .........................................................................................................................................44
Personnaliser une liste ..................................................................................................................... 45
Choisir la police du texte ..................................................................................................................47
Taille des caractres ......................................................................................................................... 48
Attributs des caractres ................................................................................................................... 49
Utiliser des polices de caractres non conventionnelles ....................................................... 50
Mise en forme des liens hypertexte ............................................................................................. 54
Exercice 2 .............................................................................................................................................57
4. Couleur des lments .................................................................................59
Couleur du texte ................................................................................................................................ 59
Couleur darrire-plan dun lment ............................................................................................ 59
Dnir une couleur par son code RGB ........................................................................................ 60
IV Table des matires
Transparence et opacit des lments ........................................................................................ 61
Gradient linaire ................................................................................................................................ 62
Gradient radial .....................................................................................................................................67
Exercice 3 .............................................................................................................................................72
5. Images ..........................................................................................................75
Insrer une image dans une page .................................................................................................75
Une image en arrire-plan dune page ........................................................................................76
Une image en arrire-plan dun conteneur ................................................................................. 77
Utiliser une image comme lien hypermdia ................................................................................78
Lgender une image .........................................................................................................................78
Centrer une image dans un conteneur ........................................................................................79
Modier les caractristiques dune image lorsquelle est survole ...................................... 81
Empiler des images .......................................................................................................................... 82
Prchargement dimages ................................................................................................................ 83
Images ractives ................................................................................................................................ 84
Album photos ..................................................................................................................................... 85
Exercice 4 ............................................................................................................................................ 88
6. Ombrages et arrondis .................................................................................89
Ombrer des objets non textuels .................................................................................................... 89
Ombrer des objets textuels ............................................................................................................ 92
Arrondir les coins dun lment de type block .......................................................................... 93
Exercice 5 .............................................................................................................................................97
7. Menus ............................................................................................................99
Menu vertical ottant en HTML5 ................................................................................................... 99
Menu horizontal en HTML5 ...........................................................................................................100
Amlioration du menu avec quelques proprits CSS ..........................................................102
Menu droulant ................................................................................................................................. 103
Exercice 6 ............................................................................................................................................. 111
8. Formulaires et stockage local de donnes .............................................113
Dnir un formulaire ......................................................................................................................... 113
Envoi dun formulaire par mail ....................................................................................................... 114
Les difrents lments utilisables dans un formulaire ........................................................... 116
Quelques exemples de formulaires ............................................................................................. 118
Focus ................................................................................................................................................... 124
Validation de donnes .................................................................................................................... 127
Modier le style dun champ en fonction de sa validit ......................................................... 132
Stockage local de donnes ........................................................................................................... 134
Exercice 7 ........................................................................................................................................... 137
Exercice 8 ........................................................................................................................................... 138
Table des matires V
9. Tableaux ......................................................................................................141
Dnir un tableau en HTML ............................................................................................................ 141
Dnir un tableau en CSS .............................................................................................................. 142
Bordures autour des cellules ........................................................................................................ 144
Fusionner et sparer des bordures ............................................................................................ 145
Espacer les cellules ......................................................................................................................... 146
Fusionner des cellules .................................................................................................................... 147
Ajouter une lgende au tableau ................................................................................................... 149
Arrire-plan des cellules .................................................................................................................150
Alignement dans les cellules......................................................................................................... 152
Difrencier lignes paires et lignes impaires ............................................................................. 153
Mise en forme des cellules vides ................................................................................................. 154
Arrondis et ombrages .....................................................................................................................155
Exercice 9 ........................................................................................................................................... 157
10. Mise en page ............................................................................................ 159
inline, block ou les deux?.............................................................................................................159
Nouvelle organisation des documents .......................................................................................160
Positionner les lments afchs sur une page ...................................................................... 164
Faire otter un lment .................................................................................................................. 170
Mise en page sur plusieurs colonnes ......................................................................................... 172
Marges ................................................................................................................................................ 175
Responsive Web Design (Media Queries CSS) ........................................................................ 177
Optimiser les pages dun site Web .............................................................................................. 179
Exercice 10 .......................................................................................................................................... 181
Exercice 11............................................................................................................................................ 181
Exercice 12 .......................................................................................................................................... 181
11. Gestion vnementielle ........................................................................... 183
Gestion vnementielle en HTML ............................................................................................... 183
Gestion vnementielle en CSS .................................................................................................. 184
Gestion vnementielle en jQuery .............................................................................................. 185
vnements lis la fentre ......................................................................................................... 185
vnements lis au clavier ............................................................................................................ 187
vnements lis la souris ........................................................................................................... 188
vnements lis aux formulaires .................................................................................................190
vnements lis aux mdias .........................................................................................................192
vnements lis lorientation .....................................................................................................196
Exercice 13 ..........................................................................................................................................199
VI Table des matires
12. Multimdia ................................................................................................ 201
Insrer un lment audio ...............................................................................................................201
Piloter une balise <audio> en jQuery ......................................................................................203
Insrer un lment vido ..............................................................................................................205
Piloter une balise <video> en jQuery ...................................................................................... 207
Exercice 14 .........................................................................................................................................209
13. Transformations, transitions et animations ...........................................211
Transformations ................................................................................................................................. 211
Transitions ......................................................................................................................................... 223
Quelques animations classiques .................................................................................................228
Animations personnalises ........................................................................................................... 232
Difrer une animation ................................................................................................................... 233
Mettre en place un timer ............................................................................................................... 234
Exercice 15 ........................................................................................................................................ 236
14. Mise jour avec AJAX ............................................................................237
Charger un chier ............................................................................................................................ 237
$.get() ........................................................................................................................................... 239
$.post() ......................................................................................................................................... 242
$.ajax() ......................................................................................................................................... 244
Exercice 16 ........................................................................................................................................ 249
15. Mise en ligne dun site ............................................................................ 251
Choisir un hbergeur ...................................................................................................................... 251
Crer un nom de domaine ............................................................................................................252
Transfrer les chiers en FTP ....................................................................................................... 253
Index ............................................................................................................... 257
Introduction VII
Introduction
Vous navez jamais cr de pages Web, mais vous rvez de le faire? Vous utilisez un CMS
et vous aimeriez amliorer les pages qui y ont t cres? Ce livre est fait pour vous!
Au l des pages, vous dcouvrirez:
les bases des langages HTML, CSS et jQuery;
comment afcher des lments textuels en HTML;
les techniques permettant de modier la couleur des lments afchs;
comment afcher des images, les mettre en page et raliser un album photos;
les techniques dombrage et darrondi du CSS3;
comment mettre en place des menus en HTML5 et CSS3;
la dnition de formulaires (simples et volus) en HTML5;
le stockage local de donnes en HTML5;
la dnition et la mise en forme de tableaux en HTML5 et CSS3;
les techniques de mise en page CSS;
la gestion vnementielle en HTML, CSS et jQuery;
lutilisation dlments multimdia dans des pages HTML5;
les transformations et animations en CSS3 et jQuery;
la mise jour dune portion de page HTML avec Ajax;
la mise en ligne dun site Web.
Les sources de louvrage
Les ditions Pearson mettent disposition sur le site www.moneformation.fr lensemble
des codes passs en revue dans cet ouvrage. Ces codes sont rassembls dans une
archive au format ZIP. Pour accder aux chiers correspondants, il vous suft de dziper
cette archive en double-cliquant dessus dans lExplorateur de chiers et en cliquant sur
Extraire tout dans la barre doutils.
Site compagnon
Cet ouvrage est accompagn dun site Web sur lequel se trouvent tous les corrigs
des exercices en vido. Pour accder ces derniers, rendez-vous ladresse www.
moneformation.fr, inscrivez-vous pour activer votre compte et accder aux corrigs des
exercices. Vous aurez besoin de consulter le prsent ouvrage pour crer votre compte
et rpondre la question de scurit. Chaque fois que vous voudrez raliser un exercice
de louvrage, vous pourrez vous rfrer la page correspondante de lexercice sur le
site Web.
VIII Introduction
Rubriques spciales de ce livre
Astuce
Elles fournissent des remarques
particulires ou des raccourcis
inhabituels du langage.
Info
Elles donnent des informations
complmentaires sur le sujet tudi,
sans tre indispensables pour la tche
en cours.
Attention
Elles attirent votre attention sur des
points particulirement importants ou
qui demandent une relecture pour tre
correctement assimils.
Joindre lauteur
Une question? Une remarque? Une suggestion? Nhsitez pas me joindre en vous
rendant sur le site www.mediaforma.com et en slectionnant longlet Contact.
1
Avant de commencer
Cet ouvrage est consacr aux langages de programmation HTML5, CSS3 et jQuery.
Vous vous demandez certainement sil est absolument ncessaire dapprendre ces trois
langages, ou si vous pouvez vous limiter au HTML. Cette question est tout fait licite, car
les pages Web sont crites en HTML. Ce langage devrait donc sufre!
Sil est vrai que, contrairement au HTML, les langages CSS et jQuery ne sont pas
obligatoires, vous verrez quils apportent un confort non ngligeable et que, tout bien
considr, ils sont quasiment incontournables pour quiconque dsire crer un site Web
bien structur, facilement maintenable et agrable utiliser
Mais, au fait, quest-ce quun site Web?
Un site Web est constitu dune ou de plusieurs pages Web.
Attention
Je dis bien "site Web" et non "site Internet"! Beaucoup de personnes considrent
quInternet se limite au Web et parlent tout naturellement de sites Internet. Mais alors,
est-ce que lchange de messages e-mail, les tlchargements FTP et les dialogues en
direct ne font pas partie dInternet? Bien sr que si! Comme vous lisez cet ouvrage, vous
allez acqurir une certaine exprience dans le dveloppement de sites Web et, en tant
qu'"expert", il est important que vous utilisiez le bon vocabulaire.
Lorsquun site est constitu dune seule page, il se contente dafcher un nombre rduit
dinformations, ou il utilise une technique qui lui permet dafcher plusieurs pages dans
une seule. Ceci est possible en mettant en place un systme donglets qui contiennent
chacun une partie des informations afcher.
Lorsquun site est constitu de plusieurs pages, ces dernires sont relies entre elles par
des liens hypertexte ou hypermdia. Dans la Figure1.1, par exemple, cet extrait de page
contient plusieurs liens hypertexte et hypermdia.
2 Chapitre 1
Figure 1.1
Cette gure
reprsente une
partie de la page
principale du site
www.microsoft.com.
Vous laurez compris, les liens hypertexte sont des lments textuels sur lesquels on peut
cliquer pour accder dautres pages. Quant aux liens hypermdia, ils sont galement
cliquables, mais reprsents par des lments non textuels (des images en gnral).
La page principale dun site est appele "page daccueil" ou "homepage". Cest elle qui
donne accs aux autres pages du site, en utilisant une structure arborescente dans
laquelle les pages de tous les niveaux peuvent faire rfrence aux pages des autres
niveaux.
Figure 1.2
La structure
arborescente
dun site
compos de
sixpages.
Quapporte chaque langage?
Les langages HTML, CSS et jQuery sont utiliss dans des domaines trs difrents:
Le HTML permet de dnir le contenu des pages. Entendez par l le texte, les images
et les autres lments qui doivent tre afchs dans le navigateur. Dans cet ouvrage,
nous utiliserons la version5 du langage. Il sagit en efet dun standard unanimement
reconnu et universellement utilis dans tous les navigateurs rcents, sur les ordinateurs,
les tablettes et les tlphones.
Le CSS permet de mettre en forme les lments afchs (dimensions, bordures,
couleurs, etc.) et de les agencer dans les pages (position, marges, ancrage, etc.). Dans
cet ouvrage, nous utiliserons la version3 du langage. Certaines instructions CSS3 ne
sont pas encore nalises, mais les choses vont en samliorant au l du temps.
Avant de commencer 3
Le jQuery est essentiellement utilis pour apporter du mouvement et de linteractivit
aux pages Web. Nous lutiliserons pour animer des zones de lcran et pour ragir aux
actions de lutilisateur.
Comme vous commencez le pressentir, ces trois langages forment un tout et la ralisation
de pages Web en omettant lun dentre eux nest pas une bonne ide. Rassurez-vous,
votre apprentissage se fera de faon progressive, pratique et indolore. Trs vite, vous
serez capable de crer des sites volus et compatibles avec les standards actuels.
Info
jQuery nest pas un langage, mais une bibliothque, qui vient complter et simplier
lutilisation du langage JavaScript.
Vocabulaire et conventions dcriture
Avant de commencer votre apprentissage, vous devez connatre quelques termes
techniques:
Le langage HTML est compos de balises (ou tags) dlimites par les signes "<" et ">".
Voici quelques balises utilisables en HTML:
<html> et </html>
<u> et </u>
<img>
Les balises sont gnralement ouvertes et fermes. Le signe "/", prcis aprs le "<" de
dbut de balise, indique quil sagit dune balise fermante. Ainsi, par exemple, </html>
et </u> sont des balises fermantes, alors que <html> et <u> sont des balises ouvrantes.
Certaines balises peuvent tre ouvrantes et fermantes. On dit alors quelles sont
"autofermantes". Dans ce cas, le signe "/" est plac la n de la balise, juste avant le ">".
Par exemple:
<br />
<hr />
<meta />
Lorsque les signes "<" et ">" sont omis, on parle non plus de balises mais dlments.
Nous utiliserons alternativement ces deux termes dans cet ouvrage.
Certaines balises comportent un ou plusieurs paramtres, nomms "attributs". Par
exemple, la balise <img> suivante utilise lattribut src pour indiquer le chemin et le nom
de limage afcher:
<img src="images/banniere.jpg" />
Dune manire plus gnrale, toutes les balises HTML sont construites sur le mme
modle:
<lment attr1="val1" attr2="val2" attr3="val3" >
O lment est le nom dun lment HTML (a, img, link ou body par exemple), les
attr sont des attributs HTML et les val sont les valeurs afectes ces attributs. Les
4 Chapitre 1
couples attribut-valeur permettent de paramtrer llment auquel ils sappliquent. Par
exemple, vous pouvez dnir ladresse de la page atteindre dans un lien hypertexte
<a>, limage afcher dans une balise <img>, ou encore le nom dun formulaire dans
une balise <form>.
La premire balise dun document HTML5 est appele "DTD" (pour dclaration de type
de document). Elle indique au navigateur le type de langage utilis. En HTML5, la DTD
est des plus simples:
<!DOCTYPE html>
Par convention, seule la balise DOCTYPE est crite en majuscules dans un document
HTML5. Toutes les autres balises seront donc systmatiquement crites en caractres
minuscules.
Les instructions CSS sont gnralement regroupes dans len-tte du document HTML
ou dans un chier spcique appel "feuille de styles". Elles consistent en un ensemble
de couples "proprit: valeur;". Voici quelques instructions CSS:
background: yellow;
foat: left;
height: 20px;
jQuery est essentiellement utilis pour interagir avec le DOM (Document Object Model).
Cet acronyme fait rfrence une structure de donnes qui reprsente un document
HTML comme une arborescence. Avec jQuery, vous pouvez interroger le DOM pour
connatre les caractristiques des balises (attributs et valeurs HTML, mais aussi proprits
et valeurs CSS) et les modier.
La fonction jQuery(), souvent remplace par son alias $() pour raccourcir lcriture,
est le point dentre de la bibliothque jQuery. Elle permet daccder toutes les
mthodes de la bibliothque. Lorsquune mthode jQuery est invoque, elle retourne un
objet jQuery, qui consiste en zro, un ou plusieurs lments piochs dans le DOM. Voici
un exemple dinstruction jQuery:
$('#afiche').html('La condition est respecte');
Ici, le texte "La condition est respecte" est afect llment didentiant afiche du
DOM.
Compatibilit HTML5/CSS3
Alors que nous crivons ces lignes, quelques nouveaux lments propres au langage
HTML5 ne sont pas encore entirement implments sur les navigateurs. Pour connatre le
taux de compatibilit de votre navigateur, rendez-vous sur la page http://html5test.com/.
Un compte rendu clair et succinct y sera prsent et une note lui sera attribue. Comme le
montre la Figure1.3, Google Chrome est aujourdhui le navigateur le plus compatible avec
le standard HTML5.
Avant de commencer 5
Figure1.3
Comparaison des
navigateurs Google
Chrome 30, Firefox 25
et Internet Explorer 11
sous Windows 8.1.
Les lments inconnus du navigateur sont gnralement ignors. Mais il est possible
de leur afecter un style en utilisant une feuille de styles CSS. Notez cependant quun
traitement particulier doit tre rserv Internet Explorer8 et infrieur. En efet, celui-ci
doit intgrer les lments inconnus son DOM via la mthode createElement. Sans
quoi, il ne sera pas en mesure de leur afecter un style. Dautre part, il est ncessaire
dattribuer un rendu block ces lments en initialisant leur proprit CSS display.
Nous y reviendrons en dtail par la suite.
Concernant le langage CSS, les principaux navigateurs utilisent un prxe pour (pr)
implmenter les nouvelles proprits CSS3:
-moz pour les navigateurs Mozilla (Firefox);
-webkit pour les navigateurs Webkit (Safari, OmniWeb, Midori,etc.);
-khtml pour les navigateurs Konqueror;
-o pour les navigateurs Opera;
-ms pour le navigateur Internet Explorer9 et suprieur.
Tant que la spcication du langage na pas atteint au moins le statut de recommandation
candidate, vous devrez utiliser plusieurs prxes dans les proprits CSS3 pour assurer
la plus grande compatibilit possible. terme, ces prxes ne devraient plus avoir cours
et une seule instruction devrait tre interprte lidentique dans tous les navigateurs.
Wait and see
Si vous utilisez encore des fonctions CSS spciques dInternet Explorer (DropShadow(),
flter() ou gradient(), par exemple), mieux vaut les inclure dans une feuille de styles
particulire, appele dans un commentaire conditionnel, dans len-tte du document:
<head>
<!--[if IE]>
<link rel="stylesheet" href="style-pour-ie.css">
<![endif]-->
</head>
6 Chapitre 1
Si, par la suite, vous dcidez de remplacer ces fonctions par du code CSS3, il vous sufra
de supprimer llment link correspondant.
Les outils de dveloppement
Pour pouvoir dvelopper en HTML5/CSS3/jQuery, vous devez tlcharger puis installer
quelques briques logicielles: lditeur Notepad++, les navigateurs Firefox et Chrome et
la bibliothque jQuery.
Notepad++
Notepad++ est un diteur de code multilangage coloration syntaxique. Distribu sous
licence GPL, vous pouvez librement linstaller et lutiliser sur votre ordinateur. Rendez-
vous sur la page http://notepad-plus-plus.org/fr/, cliquez sur Tlchargement dans la
partie gauche de la page, puis sur DOWNLOAD pour tlcharger la dernire version en
date de Notepad++. Le chier tlcharg est une archive auto-extractible. Il suft donc de
double-cliquer dessus pour linstaller.
Figure 1.4
Tlchargement de Notepad++.
Firefox
Firefox est un excellent navigateur Web. Il doit faire partie de la panoplie du dveloppeur
Web, an de tester la compatibilit du code.
Pour tlcharger Firefox, rendez-vous sur la page www.mozilla.org/fr/refox/new/ et
cliquez sur le bouton Firefox, Tlchargement gratuit. Un chier excutable dinstallation
sera alors tlcharg. Cliquez sur Excuter pour procder linstallation de Firefox sur
votre ordinateur.
Avant de commencer 7
Google Chrome
Chrome est actuellement le navigateur le plus compatible avec les langages HTML5 et
CSS3. Vous vous devez donc de linstaller sur votre ordinateur, ne serait-ce que pour
avoir un avant-got des possibilits ofertes par les instructions les plus volues de
ces langages. Sans aucun doute possible, les autres navigateurs seront en mesure
dinterprter ces instructions dans un avenir proche.
Pour tlcharger Google Chrome, rendez-vous sur la page www.google.fr/intl/fr/
chrome/browser/ et cliquez sur Tlcharger Google Chrome.
La bibliothque jQuery
jQuery est une bibliothque JavaScript. En dautres termes, il sagit dun chier dextension
.js. Pour dvelopper du code jQuery, il suft de faire rfrence la bibliothque jQuery
avec une instruction du type suivant:
<script src="chemin">
</script>
O chemin reprsente le chemin complet permettant daccder la bibliothque jQuery.
Le plus simple consiste faire rfrence un CDN (Content Delivery Network). De la
sorte, vous obtiendrez automatiquement la dernire version en date de jQuery. En outre,
tant donn que de nombreux sites Web utilisent jQuery, il y a de grandes chances pour
que cette bibliothque ait dj t utilise par votre navigateur et se trouve dans sa
mmoire tampon. Dans ce cas, il ne sera pas ncessaire de la charger nouveau: son
accs sera immdiat.
Deux versions de jQuery sont disponibles: une premire traditionnelle, visualisable dans
Notepad++, et une seconde minie, de faon rduire sa taille au maximum. Pour arriver
ce rsultat, les espaces, les tabulations et les commentaires ont t supprims de la
bibliothque traditionnelle. La bibliothque jQuery est donc incomprhensible pour nous,
pauvres humains, mais elle est strictement identique la version non minie dun point
de vue fonctionnel. Je vous conseille donc dutiliser la version minie an de rduire
le temps ncessaire son chargement, si elle ne se trouve pas dj dans le cache du
navigateur.
Vous utiliserez donc linstruction suivante:
<script src="http://code.jquery.com/jquery.min.js">
</script>
Votre premire page HTML avec
Notepad++
Dans cette section, vous allez dvelopper votre premire page en HTML5 et CSS3. Le
code mis en place servira de base tous les autres codes dvelopps dans cet ouvrages.
Nous le qualierons de "squelette standard".
8 Chapitre 1
Code minimal en HTML5
Voici le code minimal utiliser pour une page HTML5:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
La balise <!DOCTYPE> indique quil sagit dune page dveloppe en HTML5.
Les balises <html> et </html> dlimitent le document HTML.
Les balises <head> et </head> constituent len-tte du document. Entre ces balises,
vous dnirez difrents lments tels que:
le texte afch dans la barre de titre du navigateur;
le jeu de caractres utilis dans la page;
des informations de rfrencement lattention des moteurs de recherche, etc.
Les balises <body> et </body> dlimitent le document. Cest ici que vous insrerez le
contenu (texte, images, etc.) qui doit tre afch dans la page.
Tapez ce code dans Notepad++. Lancez la commande Enregistrer dans le menu Fichier
et sauvegardez le code sous le nom squelette.html, en slectionnant Hyper Text Markup
Language dans la liste droulante Type (voir Figure1.5).
Figure 1.5
Le code est sauvegard dans un
chier HTML.
Ds que le chier est sauvegard, les instructions changent de couleur. En efet,
Notepad++ sait maintenant que les instructions sont crites en HTML et il peut leur
appliquer une coloration syntaxique (voir Figure1.6).
Avant de commencer 9
Figure 1.6
Les instructions sont colores car
Notepad++ connat le langage
utilis.
Langue du document
La langue franaise utilise des caractres spciques tels que , , , , etc. Pour que ces
derniers soient afchs correctement dans tous les navigateurs du monde, vous devez
utiliser un jeu de caractres (ou charset).
Les charsets ( jeux de caractres) sont associs la notion de claviers nationaux. Pour
indiquer aux navigateurs dans quel jeu de caractres vous travaillez, vous pouvez insrer
une balise <meta charset=> dans len-tte de votre document.
Vous utiliserez le jeu de caractres:
ISO-8859-1 pour accder directement la majorit des caractres des langues
occidentales (franais, anglais, allemand, espagnol,etc.).
UTF-8 pour afcher sur une mme page des caractres issus de plusieurs langues
(franais et japonais, par exemple). Consultez la page www.columbia.edu/kermit/
utf8.html pour vous rendre compte des immenses possibilits du jeu de caractres
UTF-8.
Dans cet ouvrage, nous utiliserons systmatiquement le jeu de caractres UTF-8, bien
plus universel et indpendant des frontires.
Pour utiliser le jeu de caractres UTF-8, il ne suft pas dinsrer une balise <meta> dans
le code: vous devez galement vous assurer que Notepad++ utilise ce type dencodage.
Droulez le menu Encodage et slectionnez la commande Encoder en UTF-8 (sans BOM).
Info
Lencodage UTF-8 avec BOM (pour Byte Order Mark) ajoute une espace inscable de
largeur nulle en dbut de chier. tant donn que ce caractre na aucune utilit en
UTF-8, je vous conseille dutiliser un encodage UTF-8 sans BOM. Dautant plus quun
encodage avec BOM peut provoquer une erreur de type "headers already sent by"
lorsque vous efectuez une redirection de page Web.
Une fois le jeu de caractres spci, vous devez galement indiquer la langue utilise
dans le document. Cette information est en efet primordiale pour le rfrencement
(moteurs de recherche) et laccessibilit (lecteurs dcran) de la page.
10 Chapitre 1
La langue dun document HTML prsente deux types dinformations:
La langue "primaire", qui correspond au public vis. Elle peut tre spcie:
Dans le champ den-tte HTTP, au niveau du serveur. Par exemple, sur un serveur
APACHE, la ligne suivante peut tre insre dans le chier .htaccess du dossier
concern:
Content-Language :fr
Dans le document, par lintermdiaire dun lment meta:
<meta http-equiv="Content-Language" content="fr" />
La langue "de traitement", qui correspond au contenu de la page. Elle doit tre spcie
dans lattribut lang. Si cet attribut est dni dans la balise <html>, toutes les autres
balises hriteront de cette langue:
<HTML lang="fr" />
Rfrencement
La balise <meta> peut galement tre utilise comme aide au rfrencement dune
page. Vous pouvez prciser:
les mots-cls associs la page;
la description de la page;
le nom de lauteur de la page.
<meta name="keywords" content="mot-cl1, mot-cl2, mot-cl3, " />)
<meta name="description" content="Description de la page en quelques phrases." />
<meta name= "author" content="Nom de lauteur" />
Info
La balise <meta name="keywords"> ne fait plus partie de lalgorithme dindexation de
Google. Autant dire quelle est devenue quasiment obsolte!
Titre du document
Le titre du document est spci entre les balises <title> et </title>, dans len-tte
du document. Le texte entr entre ces deux balises est afch dans la barre de titre du
navigateur. Il joue galement un rle trs important dans le rfrencement de la page. Il
est donc important de choisir un titre appropri pour chaque page.
Squelette standard HTML5
Compte tenu des remarques prcdentes, le squelette standard devient donc le suivant:
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Language" content="fr" />
Avant de commencer 11
<meta name="description" content="Description de la page en quelques
phrases." />
<meta name="author" content="Nom de lauteur" />
<title>Titre de la page</title>
</head>
<body>
</body>
</html>
Des commentaires dans le code
Il est trs important dinsrer des commentaires dans le code que vous dveloppez. Si
vous devez y apporter des modications, vous saurez tout de suite quelle partie du code
est concerne
En HTML, vous utiliserez une balise un peu particulire:
<!-- Ceci est un commentaire
qui peut staler sur
plusieurs lignes -->
Valider le code HTML
Avant de tester un code HTML5 dans votre navigateur, je vous conseille de vous assurer
de sa conformit. Pour cela, rendez-vous la page http://html5.validator.nu.
Selon la valeur slectionne dans la liste droulante Validator Input, le chier HTML5
test peut se trouver sur un serveur Web (Address), sur un disque local (File Upload) ou
tre entr directement sur la page Web du validateur (Text Field). La Figure1.7 illustre un
exemple de validation de code depuis un serveur Web.
Figure1.7
Le code HTML5 est valide.
12 Chapitre 1
Info
Si vous prfrez utiliser le validateur du W3C, tapez ladresse suivante dans la barre
dadresse de votre navigateur: http://validator.w3.org/.
Premier contact avec le langage CSS3
Vous savez maintenant crire un squelette HTML5 standard. Il est temps daborder le
langage CSS, ou plus exactement la version 3 du langage CSS.
Comme nous lavons dit prcdemment, le langage CSS est utilis pour mettre en forme
les lments afchs (dimensions, bordures, couleurs, etc.) et les agencer dans les
pages (position, marges, ancrage, etc.). Pour cela, on utilise des couples "proprit:
valeur;" que lon afecte certains lments de la page. Vous voyez, il ny a rien de
bien compliqu l-dedans. Le tout est de connatre (ou de savoir retrouver, ce qui est bien
plus simple) les innombrables proprits CSS utilisables. Dans le chapitre suivant, vous
verrez quen parlant correctement votre moteur de recherche prfr, la tche est bien
plus simple quon ne pouvait le supposer.
O crire le code CSS?
Le code CSS peut tre crit:
dans les balises concernes;
dans len-tte du document (on parle de feuille de styles interne);
dans un chier spar (on parle de feuille de styles externe).
Ces trois techniques nont pas la mme "prcdence". Entendez par l que si vous
afectez trois valeurs difrentes une mme proprit CSS (une dans une balise HTML,
une dans len-tte du document et une dans une feuille de styles externe), deux des
valeurs afectes seront crases par la troisime. Mais alors, qui est le vainqueur dans
cette foire dempoigne, et quelle est lutilit dun tel fonctionnement?
Eh bien, le code CSS crit dans une balise crase celui qui est dni dans len-tte du
document, et ce dernier crase celui qui est dni dans une feuille de styles externe.
Imaginez le scnario suivant: vous dnissez toutes les proprits de mise en forme et
de mise en page de votre site dans une feuille de styles externe. Cette feuille de styles
est utilise par toutes les pages de votre site an de leur confrer un mme look and feel.
Imaginez maintenant quil soit possible de modier quelques proprits CSS dans chaque
page an de leur donner une mise en forme/en page qui reprend les lignes gnrales du
site, mais qui, par certains cts, leur confre un aspect unique. Pour arriver ce rsultat,
il vous sufra de rednir ces proprits dans len-tte de chaque page. Enn, supposons
que certaines balises ne doivent pas se conformer aux rgles dnies dans la feuille de
styles externe et/ou interne. Pour cela, vous dnirez leurs caractristiques directement
dans les balises.
Avant de commencer 13
Styles CSS dans les balises
Pour dnir des proprits CSS dans une balise, vous utiliserez lattribut style:
<balise style="proprit1: valeur1; propritN: valeurN;">
o:
balise est un nom de balise: <p> ou <h1>, par exemple.
proprit1 propritN sont des proprits de style de la balise.
valeur1 valeurN sont les valeurs afectes aux proprits.
titre dexemple, pour afecter la couleur jaune larrire-plan dun lment p, vous
utiliserez le code suivant:
<p style="background-color:yellow;">
Ce texte a un arrire-plan jaune
</p>
Pour utiliser la police Verdana corps18 dans un titreh2, vous utiliserez le code suivant:
<h2 style="font-family:Verdana; font-size: 18px;">
Ce titre est en Verdana corps 18
</h2>
Attention
moins que vous ne dsiriez craser les proprits dnies par dfaut dans une feuille
de styles externe, cette technique nest pas optimale, car elle est limite au seul lment
qui lutilise. Dans la mesure du possible, privilgiez lutilisation dune feuille de styles
externe (chier dextension .css) relie au document laide dun lment link. Cette
mme feuille de styles pourra tre utilise dans tous les documents apparents pour
uniformiser leur apparence.
Feuille de styles interne
Dans la section prcdente, vous avez vu quil tait possible de dnir des attributs
de mise en forme directement dans les balises HTML. Pour tendre la porte de ces
dnitions, vous pouvez les regrouper dans len-tte du document HTML, entre les
balises <style> et </style>:
<style type="text/css">
</style>
Voici la syntaxe permettant dafecter des proprits une balise:
lment {proprit1:valeur1; propritN:valeurN;}
o:
lment est un nom dlment: p ou h1, par exemple.
proprit1 correspond aux proprits de style de llment.
valeur1 correspond aux valeurs afectes aux proprits.
14 Chapitre 1
titre dexemple, pour dnir dans tout le document un arrire-plan jaune pour les
lments p et pour utiliser la police Verdana corps 18 dans tous les titres h2, vous
utiliserez le code suivant:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Une feuille de styles interne</title>
<style>
p {background-color:yellow;}
h2 {font-family:Verdana; font-size: 18px;}
</style>
</head>
<body>
</body>
</html>
Attention
Cette technique nest pas optimale, car elle est limite au seul document qui lutilise.
Dans la mesure du possible, privilgiez lutilisation dune feuille de styles externe (chier
dextension .css) relie au document laide dun lment link. Elle pourra tre utilise
dans toutes les pages dun mme site pour uniformiser leur apparence.
Feuille de styles externe
Pour tendre encore le champ daction des styles dnis dans len-tte dun document,
vous pouvez les stocker dans une feuille de styles externe (chier .css). Dans ce cas,
plusieurs pages HTML pourront utiliser cette feuille de styles an dobtenir une mme
mise en forme/mise en page.
Pour relier une feuille de styles externe un document HTML, vous utiliserez la balise
<link> (ici, la feuille de styles a pour nom moncss.css):
<link rel="stylesheet" href="moncss.css" />
Supposons que le chier moncss.css contienne les deux lments de style ci-aprs:
p {background-color:yellow;}
h2 {font-family:Verdana; font-size: 18px;>
Un document HTML y fera rfrence avec les instructions suivantes:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Une feuille de styles externe</title>
<link rel="stylesheet" href="moncss.css" />
</head>
<body>
Avant de commencer 15
<!-- Les instructions HTML5 peuvent utiliser les styles -->
<!-- dfnis dans la feuille de styles moncss.css -->
</body>
</html>
Pourquoi prfrer CSS HTML pour la
mise en forme?
Dans les sections prcdentes, vous avez vu quil est possible de dnir les proprits
CSS dans les balise HTML ou dans une feuille de styles (interne ou externe). Dans
la mesure du possible, et en particulier si votre projet consiste dnir un site Web
compos de plusieurs page, je vous conseille de crer une feuille de styles externe et dy
faire rfrence dans chaque page avec une balise <link>. Ainsi, vos pages auront tout
naturellement la mme apparence.
De plus, si vous voulez changer certaines caractristiques du site (la couleur darrire-
plan, la hauteur de la bannire, la police des titres h2, ou nimporte quelle autre proprit),
vous naurez quun seul chier modier: la feuille de styles externe. Les modications
seront automatiquement reportes sur toutes les pages du site, quil sagisse de quelques
pages seulement ou de plusieurs centaines!
Un exemple de code CSS
Ce document HTML afche une liste puces comportant quatre points. La mise en forme
du document est assure par la feuille de styles externe moncss.css:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Liste puces avec style externe</title>
<link rel="stylesheet" href="moncss.css" />
</head>
<body>
Une liste puces :
<ul>
<li>Premier</li>
<li>Deuxime</li>
<li>Troisime</li>
<li>Quatrime</li>
</ul>
</body>
</html>
Voici le code de la feuille de styles moncss.css:
li
{
color: blue;
16 Chapitre 1
background: #FF4040;
margin: 14px 14px 14px 14px;
list-style: square;
}
Ici, nous dnissons les caractristiques de la liste puces:
Couleur des caractres: blue.
Arrire-plan: #FF4040.
Marges: 14px.
Style des puces: square.
Le rsultat de ce code est reprsent dans la Figure1.8.
Figure 1.8
Tous les lments de la liste ont t afects par la
feuille de styles externe.
Premier contact avec jQuery
Arriv ce point dans la lecture de cet ouvrage, vous savez:
dnir un squelette HTML5 standard;
modier les proprits CSS dune balise en utilisant lattribut style;
dnir une feuille de styles interne;
dnir une feuille de styles externe et lutiliser dans un document HTML.
Il est temps daborder le troisime langage: jQuery.
O crire le code jQuery?
Pour tre en mesure dutiliser du code jQuery, vous allez dans un premier temps faire
rfrence la bibliothque jQuery avec linstruction suivante:
<script src="http://code.jquery.com/jquery.min.js"></script>
Vous pourrez ensuite insrer des instructions jQuery dans le code HTML, entre les balises
<script> et </script>:
<script>
Avant de commencer 17
// Une ou plusieurs instructions jQuery
</script>
Comme nous lavons dit prcdemment, jQuery est utilis pour interroger et pour
modier le DOM, cest--dire les lments afchs dans une page Web. Imaginez que
vous commenciez interroger/modier des lments qui ne sont pas encore afchs.
Cela produirait une belle pagaille, et peut-tre mme un "plantage" du navigateur. La
premire prcaution prendre lorsque lon crit du code jQuery est donc de sassurer de
la disponibilit du DOM. Voici comment cela scrit en jQuery:
jQuery(document).ready(function(){
// Ici, le DOM est entirement disponible
});
Fort heureusement, cette syntaxe peut tre simplie:
$(function(){
// Ici, le DOM est entirement disponible
});
Un grand pas en avant a t franchi!
Vous savez maintenant faire rfrence la bibliothque jQuery et attendre la disponibilit
du DOM. Il ne reste plus qu crire quelques instructions entre les accolades pour
manipuler le DOM!
Que peut apporter jQuery un document HTML?
Vous vous demandez certainement pourquoi ajouter du code jQuery un document
HTML mis en forme/en page par des rgles de style CSS. Eh bien, jQuery apporte
plusieurs avantages:
Les lments afchs sur lcran peuvent ragir aux actions de lutilisateur. Par exemple,
il est possible defectuer des calculs et dafcher un rsultat lorsque lutilisateur clique
sur un bouton. Ou encore de modier les caractristiques dun lment suite certains
vnements (frappe au clavier, clic souris, heure systme, etc.).
Les lments afchs dans une page peuvent tre facilement anims (apparition,
disparition, translation) de faon automatique ou suite une action de lutilisateur.
En utilisant la technologie AJAX, jQuery peut mettre jour une partie de la page Web
courante. Par exemple, pour afcher le nom des personnes connectes un site Web,
ou encore pour mettre jour le cours dune action cote en Bourse.
Vous voyez, les avantages de jQuery ne manquent pas. Et tout ce que nous venons de
citer nest pas ralisable en HTML5/CSS3. Jespre vous avoir convaincu. Si ce nest pas
encore tout fait le cas, les pages suivantes devraient plaider en faveur de jQuery!
Un exemple de code jQuery
Dans ce code, un texte est afch en HTML, directement dans le corps du document, et
un autre est afch dans une balise <span> par une instruction jQuery:
<!DOCTYPE html>
<html>
18 Chapitre 1
<head>
<meta charset="UTF-8" />
<title>HTML et jQuery</title>
<script src=http://code.jquery.com/jquery.min.js></script>
</head>
<body>
Ce texte est afich en HTML<br>
<span id="texte2"></span>
<script>
$(function(){
$('#texte2').html('... et celui-ci par jQuery.');
});
</script>
</body>
</html>
Pour linstant, il nest pas utile que vous compreniez le fonctionnement de ce programme.
Remarquez juste quun <span> didentiant texte2 est dni dans le corps du
document:
<span id="texte2"></span>
Et que ce <span> est modi avec une instruction jQuery:
$('#texte2').html('... et celui-ci par jQuery.');
Tout ceci sera bien plus clair lorsque vous connatrez mieux jQuery. En attendant, excutez
ce code dans votre navigateur et constatez que jQuery est bien en mesure dafcher du
texte dans le <span> (voir Figure1.9).
Figure 1.9
HTML et jQuery cohabitent parfaitement.
HTML, CSS et jQuery: deux approches
Dans la section prcdente, vous avez vu que le code jQuery pouvait se trouver dans
le chier HTML de la page. De la mme faon, vous pouvez insrer le code CSS dans
la feuille de styles interne de la page pour former un code "tout en un": HTML + CSS +
jQuery. Inversement, vous pouvez crer plusieurs chiers:
Avant de commencer 19
Un pour le code HTML, limit au squelette standard et aux donnes qui doivent tre
afches dans la page.
Un pour le code CSS (feuille de styles externe) contenant les rgles de mise en forme
et de mise en page.
Un ou plusieurs pour le code jQuery. Ces lments sont alors appels en utilisant
autant de balises <script> que ncessaire.
titre dexemple, nous allons tendre le code prcdent pour y inclure quelques rgles
CSS et le dcouper en plusieurs chiers.
Le code, en version tout en un
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>HTML, CSS et jQuery tout en un</title>
<style type="text/css">
p {background-color: lime;}
span {background-color: red;}
</style>
<script src=http://code.jquery.com/jquery.min.js></script>
</head>
<body>
<p>Ce texte est afich en HTML</p>
<span id="texte2"></span>
<script>
$(function(){
$('#texte2').html('... et celui-ci par jQuery.');
});
</script>
</body>
</html>
Le code, en version multifichier
Voici le code HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>HTML seul</title>
<link rel="stylesheet" href="css-seul.css">
<script src=http://code.jquery.com/jquery.min.js></script>
</head>
<body>
<p>Ce texte est afich en HTML</p>
<span id="texte2"></span>
<script src="jquery-seul.js"></script>
20 Chapitre 1
</body>
</html>
Voici le code CSS, stock dans le chier css-seul.css:
p {background-color: lime;}
span {background-color: red;}
Voici le code jQuery, stock dans le chier jquery-seul.js:
$(function(){
$('#texte2').html('... et celui-ci par jQuery.');
});
Autant que possible, vous privilgierez lapproche multichier. En particulier si le site que
vous dveloppez comporte de nombreuses pages. En rutilisant le code CSS et jQuery
dans chacune des pages qui le ncessitent, vous rduirez le temps de dveloppement
et faciliterez la maintenance du site.
2
Premiers pas en
HTML, CSS et jQuery
Arriv ce point dans la lecture de louvrage, vous tes en mesure de crer un squelette
HTML5 standard, de dnir des rgles de mise en forme CSS (directement dans les
balises, dans une feuille de styles interne ou externe) et dinvoquer la bibliothque jQuery.
Bien que ncessaires, ces connaissances ne sont pas encore sufsantes pour crer des
pages Web dignes de ce nom. Ce deuxime chapitre va enrichir votre connaissance
des trois langages et vous permettre de faire vos premiers pas en solo. Tournez vite les
pages.
Les bases du HTML
Vous vous en doutiez, votre apprentissage va commencer par le langage HTML. Ceci est
tout fait logique puisque cest ce langage qui permettra de construire les fondations de
vos pages Web.
Textes, sauts de ligne et paragraphes
Les lments textuels insrs dans le corps du document, cest--dire entre les balises
<body> et </body>, sont afchs tels quels dans le navigateur. Il est inutile dinsrer
plusieurs sauts de ligne et/ou plusieurs espaces dans le texte:
Les sauts de ligne (simples ou multiples) seront purement et simplement limins lors
de linterprtation du code dans le navigateur.
Les espaces multiples seront remplaces par une espace simple lors de linterprtation
du code dans le navigateur.
Examinez le code suivant:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Espaces et sauts multiples</title>
</head>
<body>
22 Chapitre 2
Ce texte est volontairement crit sur
plusieurs lignes et de multiples espaces
sont insres entre les mots
</body>
</html>
Daprs vous, comment sera afch ce texte dans le navigateur ? Jetez un il la
Figure2.1 pour constater quel point votre navigateur peut manquer de discernement!
Figure 2.1
Les espaces
multiples et les
sauts de ligne sont
ignors.
Pour indiquer au navigateur que vous voulez passer la ligne, vous utiliserez la balise
<br> (pour break, ou saut de ligne). Si vous voulez que vos espaces multiples soient
galement prises en considration, vous les remplacerez par autant dentits
que ncessaire. Le code prcdent est donc corrig comme ceci:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Espaces et sauts multiples</title>
</head>
<body>
Ce texte est volontairement crit sur<br>
<br>
<br>
plusieurs lignes et
de multiples espaces<br>
sont insres
entre les mots
</body>
</html>
Comme le montre la Figure2.2, cette fois-ci, les espaces et les sauts de ligne sont bien
interprts.
Figure 2.2
Le navigateur se
comporte bien
lorsquon lui parle
correctement.
Premiers pas en HTML, CSS et jQuery 23
Pour terminer cette section, sachez que vous pouvez galement utiliser la balise <p></
p> pour crer des paragraphes.
titre dexemple, si vous insrez ces trois lignes de code entre les balises <body> et
</body> dun squelette standard, vous obtenez le rsultat reprsent la Figure2.3:
<p>Ceci est un premier paragraphe.</p>
<p>Ceci est un deuxime paragraphe.</p>
<p>Et ceci est un troisime paragraphe.</p>
Figure 2.3
Contrairement aux sauts de ligne <br>, un espace supplmentaire est insr entre chaque
paragraphe.
Info
En utilisant des rgles CSS simples, il est possible de dnir la taille des espaces afchs
avant et aprs un paragraphe.
Titres et sous-titres sur une page
Lorsque vous saisissez le contenu dune page Web, il est bon de le structurer en utilisant
des balises de titre. Six niveaux de titre sont possibles: <h1></h1> <h6></h6>.
La Figure2.4 montre comment est interprt ce code dans un navigateur:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Titres h1 h6</title>
</head>
<body>
<h1>Ceci est un titre h1</h1>
<h2>Ceci est un titre h2</h2>
<h3>Ceci est un titre h3</h3>
<h4>Ceci est un titre h4</h4>
<h5>Ceci est un titre h5</h5>
<h6>Ceci est un titre h6</h6>
</body>
</html>
24 Chapitre 2
Figure 2.4
Les six niveaux de
titre du HTML.
Le texte insr dans une balise de titre est important pour les personnes qui lisent la
page Web, mais galement pour les moteurs de recherche qui rfrencent la page. Il est
donc important de choisir des titres en accord avec le contenu de chaque section.
Mettre en valeur du texte avec des balises HTML
Selon le W3C: "La balise <b></b> reprsente maintenant une porte de texte dporter
stylistiquement de la prose normale sans transmettre dimportance en plus, telle que
les mots-cls dans un rsum de document, des noms de produits dans un article, ou
dautres portes de texte dont la prsentation typographique typique est en gras."
Toujours selon le W3C: "La balise <strong> reprsente maintenant limportance plutt
que la forte emphase."
Aprs avoir lu et relu cette prose, vous pouvez comprendre si je ne mabuse que la
balise<b> met en avant de faon modre une portion de texte. Vous utiliserez la balise
<strong> pour mettre en avant un texte plus important.
Quant la balise <i>, elle met en italique une portion de texte sans toutefois la mettre
en avant. Elle sera utilise pour afcher des termes techniques, des penses, des
dsignations taxonomiques, des expressions idiomatiques,etc. Pour mettre en avant un
texte afch en italique, vous utiliserez la balise <em>.
Tapez ce code entre les balises <body> et </body> et excutez-le. Vous devriez obtenir
le rsultat reprsent Figure2.5:
<p><b>Ce texte est afich en gras mais nest pas mis en avant</b></p>
<p><strong>Ce texte est afich en gras et est mis en avant</strong></p>
<p><i>Ce texte est afich en italique mais nest pas mis en avant</i></p>
<p><em>Ce texte est afich en italique et est mis en avant</em></p>
Figure 2.5
Visuellement, aucune
difrence entre b et
strong ni entre i et em.
Premiers pas en HTML, CSS et jQuery 25
Comme vous pouvez le voir, les balises <b> et <strong> produisent le mme efet dans
le navigateur. Il en va de mme pour les balises <i> et <em>. Dans ce cas, pourquoi
HTML5 propose-t-il plusieurs balises pour obtenir le mme rsultat ? Cette distinction
est importante pour la deuxime audience de vos pages. Entendez par l les robots qui
parcourent le Web des ns dindexation. Ces programmes nont que faire de laspect
visuel dune page. Pour eux, ce qui importe, cest le "poids" des mots utiliss. Ainsi, vous
utiliserez les balises <strong> et <em> si vous voulez mettre en avant un mot ou un bloc
de texte tout en modiant son allure. En revanche, vous utiliserez les balises <b> et <i>
si vous ne voulez faire passer aucun message aux robots dindexation.
Pour difrencier un mot visuellement (et non smantiquement), vous pouvez galement:
le souligner en lentourant des balises <u> et </u>;
le surligner en lentourant des balises <mark> et </mark>;
lafcher en caractres de petite taille, en lentourant des balises <small> et </
small>.
Tapez ce code entre les balises <body> et </body> et excutez-le. Vous devriez obtenir
le rsultat reprsent Figure2.6:
<p><mark>Ce texte est marqu</mark></p>
<p><u>Ce texte est soulign</u></p>
<p><small>Ce texte est afich en caractres de petite taille</small></p>
Figure 2.6
Dautres formes
de difrenciation.
Listes puces et listes numrotes
Les listes puces et les listes numrotes sont monnaie courante sur le Web. Elles
permettent de crer des numrations non chronologiques ou chronologiques. Dans
le premier cas, les entres de la liste sont prcdes dun tiret, dune puce ou dun
autre caractre. Dans le second cas, les entres de la liste sont prcdes dun nombre
croissant, ce qui leur confre un aspect temporel.
Une liste puces est dlimite par les balises <ul> et </ul> (ul est labrviation de
unordered list, soit en franais "liste non ordonne"). Chaque lment de la liste est
dlimit par les balises <li> et </li> (voir Figure2.7):
<ul>
<li>Premier</li>
<li>Deuxime</li>
<li>Troisime</li>
<li>Quatrime</li>
</ul>
26 Chapitre 2
Figure 2.7
Une liste puces.
Une liste numrote est dlimite par les balises <ol> et </ol> (ol est labrviation de
ordered list, soit en franais "liste ordonne"). Chaque lment de la liste est dlimit par
les balises <li> et </li> (voir Figure2.8):
<ol>
<li>Premier</li>
<li>Deuxime</li>
<li>Troisime</li>
<li>Quatrime</li>
</ol>
Figure 2.8
Une liste numrote.
Il est possible dimbriquer plusieurs liste. Pour cela, il suft dinsrer une balise <ul> ou
<ol> avant que la balise de la liste prcdente (<ul> ou <ol>) nait t ferme. titre
dexemple, le code suivant imbrique une liste numrote dans une liste puces, elle-
mme imbrique dans une liste numrote (voir Figure2.9):
<ol>
<li>Entre principale 1</li>
<ul>
<li>Entre secondaire 1</li>
<li>Entre secondaire 2</li>
<ol>
<li>Premire entre de niveau 3</li>
<li>Deuxime entre de niveau 3</li>
<li>Troisime entre de niveau</li>
</ol>
<li>Entre secondaire 3</li>
</ul>
<li>Entre principale 2</li>
<li>Entre principale 3</li>
</ol>
Premiers pas en HTML, CSS et jQuery 27
Figure 2.9
Trois listes imbriques.
Liens hypertexte
La magie du Web tient en grande partie aux liens hypertexte: en dnissant des liens sur
vos pages, il est possible de renvoyer lutilisateur vers une page de votre site ou vers une
page hberge plusieurs milliers de kilomtres
Les liens hypertexte sont dnis avec la balise <a>:
<a href="adresse">texte</a>
O adresse est ladresse de la page atteindre et texte est le texte sur lequel
lutilisateur cliquera pour accder la page vise. Par exemple, linstruction suivante
permet de crer un lien hypertexte qui donne accs au site Web de Microsoft France
(voir Figure2.10):
<a href="http://www.microsoft.com/fr-fr/default.aspx">Cliquez ici pour accder au
site de Microsoft</a>
Figure 2.10
Un clic suft pour accder
au site de Microsoft France.
28 Chapitre 2
Lien vers une partie spcique dune page
Lorsquune page contient un grand nombre dinformations, il peut tre utile de marquer
certains emplacements bien prcis (des titres, par exemple) pour faciliter sa lecture. Vous
pouvez alors vous dplacer rapidement vers les lments marqus via un lien hypertexte.
Pour marquer une balise quelconque, il suft dy insrer un attribut id. Par exemple:
<h2 id="marque">Un titre</h2>
Pour accder cet emplacement dans la page, vous devez dnir un lien hypertexte qui
pointe vers lidentiant, prcd dun caractre "#".
Examinez ce code:
<h2 id="haut">Haut de la page</h2>
<a href="#bas">Accder au bas de la page</a><br />
But I must explain to you how all this mistaken idea of denouncing pleasure and
praising pain was born and I will give you a complete account of the system,
and expound the actual teachings of the great explorer of the truth, the
master-builder of human happiness. No one rejects, dislikes, or avoids pleasure
itself, because it is pleasure, but because those who do not know how to pursue
pleasure rationally encounter consequences that are extremely painful.
<h2 id="bas">Bas de la page</h2>
<a href="#haut">Accder au dbut de la page</a>
Les ancres haut et bas sont dnies au dbut et la n du document:
<a name="haut" />