Julien Coulié
Une page web n’est rien d’autre qu’un fichier texte interprété par un navigateur, un
éditeur de texte tel que le bloc-notes de Windows suffit pour en créer une. Un fichier HTML
(.html) est composé d’un en-tête (head) puis d’un corps (body). L’en-tête contient plusieurs
informations sur la page : son titre (qui apparaît dans la barre de titre de la fenêtre), les mots-
clés utilisés par les moteurs de recherche, des appels vers d’autres fichiers (css ou JavaScript
par exemple).
Le corps quant à lui contient tous les éléments qui apparaissent dans la page web.
Dernière chose, une balise s’ouvre mais se referme aussi : la balise fermante est identique à
celle qui ouvre, avec un « / » après le « < ».
Voici le contenu d’un fichier HTML pour une page web minimale :
<html>
<head>
<title>Le minimalisme…</title>
</head>
<body>
Hello world
</body>
</html>
Pour trouver des exemples de pages web, rien de plus simple : il est possible de
regarder comment un site web est conçu en allant dans le menu Affichage de votre navigateur
puis de cliquer sur « Afficher la source ». Vous aurez alors accès au code HTML de la page.
La plupart des balises peuvent prendre des arguments. Ces derniers permettent de
préciser la façon dont le contenu doit apparaître. Ils se mettent à l’intérieur de la balise
ouvrante, à la suite du nom de celle-ci, et sont séparés par un espace. En voici quelques uns :
Les images :
<img src="image.jpg" /> Insertion d’une image au format jpg, gif ou png
width=x height=y Impose une dimension en pixels à l’image
alt="un texte" Texte alternatif quand l’image ne peut être affichée
Les hyperliens :
Les listes :
Les tableaux :
Quelques adresses :
- Un cours assez complet pour réaliser un site web : http://www.siteduzero.com/
- Une table des couleurs HTML parmi d’autres : http://www.dsi.univ-
paris5.fr/cocoul3t.html
- Le validateur de code du World Wide Web Consortium : http://validator.w3.org/
Partie 2 : Tout est dans le style…
Vous avez vu avec la première partie que nous pouvons assez facilement donner un style
particulier à notre page web, mais cela peut vite devenir laborieux dans le cas d’un plus vaste
projet (un site entier). Un exemple ? Imaginez que vous vouliez attribuer une couleur à tous
vos liens hypertextes. Il faudrait alors avec la méthode précédente inclure dans toutes les
balises <a> l’attribut color. Un peu lourd comme travail, non ? Heureusement, c’est là
qu’interviennent les CSS (Cascading Style Sheets), autrement dit les feuilles de style en
cascade.
Seule cette balise pourra avoir cet identifiant, et les propriétés qui y sont associées. L’exemple
suivant par contre montre que plusieurs balises peuvent bénéficier de l’attribut class :
Utilisation
La feuille de style est, de la même manière qu’un fichier html, un simple fichier texte qui
porte l’extension .css. Deux autres moyens existent cependant pour utiliser les propriétés
CSS : inclure une balise <style>…</style> dans l’en-tête du fichier html ou utiliser l’attribut
style à l’intérieur des balises html. L’exemple suivant montre comment utiliser les 3 méthodes
possibles :
<html>
<head>
<link type="stylesheet" type="text/css" href="feuille_style.css" />
<style>
body {
background-color: #aaaaff ;
font-family: sans-serif;
}
#haut {
border: 1px solid #000000;
}
a.navigation {
color: #ffa500;
}
</style>
</head>
<body>
<img src="mon_image.jpg" id="haut" />
<a href="lien1.html" class="navigation">Premier lien</a>
<a href="lien2.html" class="navigation">Second lien</a>
<p style="font-size: 12pt">Et voici un exemple pour utiliser l’attribut style</p>
</body>
</html>
Comme vous l’avez peut-être remarqué dans l’exemple précédent, pour attribuer une
propriété à toutes les balises du même type, on marque simplement le nom de la balise suivi
d’une accolade ouvrante, puis la liste des propriétés voulues. On fini la liste par une accolade
fermante.
Pour les éléments identifiés par un id, on utilise le symbole dièse (#) suivi par le nom de l’id.
Quant aux balises regroupées au sein d’une classe, on met le nom de la balise suivi du nom de
la classe, séparés par un point.
p, a.navigation {
font-style: italic ;
}
Une petite subtilité est à noter : si on spécifie une propriété pour une balise plusieurs fois, ce
sera le dernière spécification qui sera utilisée. Il faut donc faire attention à l’ordre dans lequel
on place les différentes déclarations.
#texte {
font-family: serif;
}
p.introduction {
font-family: monospace;
}
p{
font-family: sans-serif;
}
Ici, tous les caractères contenus dans l’élément #texte utiliseront une police à empattement
(serif) mais les paragraphes avec la classe "introduction" auront une police monospace. La
dernière déclaration annule la précédente puisqu’elle impose à tous les paragraphes une police
sans-serif. Il faut inverses les deux dernières déclarations.
Afin d’éviter d’englober trop d’éléments dans une déclaration, on peut la préciser :
#texte p {
text-align: justify;
}
Cette déclaration n’aura d’effet que pour les paragraphes compris dans l’élément #texte.
Mise en boîte
Une utilisation très utilisée des CSS est le couplage de balises div et des identifiants. On peut
voir les div comme des boîtes, que l’on peut mettre côte à côte ou les unes dans les autres,
avec ce que l’on veut à l’intérieur. (Et comme pour des boîtes, pour bien s’y retrouver, je vous
conseille de bien ranger.)
Les pseudos-classes
Ces classes sont un peu particulières et sont séparées de l’élément auquel elles font référence
par le caractère ":". Aucune déclaration class n’est nécessaire dans le fichier html.
- a:hover : lien hypertexte lors du survol du curseur de la souris ;
- a:visited : lien hypertexte lorsque la page vers lequel il pointe a été visitée ;
- p:first-letter : première lettre d’un paragraphe (utile pour faire des lettrines).