HTML et CSS en pratique
Comment fait-on un bouton ?
Finalement, un bouton, c'est quoi ? C'est tout simplement un lien hypertexte qui a une forme particulière et qui peut changer d'état en fonction de l'action de la souris (survol, clic, ...).
1 |
|
1 2 3 4 5 |
|
Si l'on se contente du sélecteur a
, tous les liens hypertextes de ma page web prendront ce style. C'est n'es pas forcément très judicieux car certains éléments <a>
de mon site doivent rester des liens hypertextes classiques.
La bonne méthode est de créer une classe (appelons-la btn
pour "bouton").
- En HTML nous donnerons cette classe
btn
aux liens qui doivent être des boutons. - En CSS nous définirons les styles pour les élément
a
ayant la classebtn
.
Comme ceci :
1 |
|
1 2 3 4 5 |
|
Allons plus loin. En CSS, nous allons pouvoir ajouter des pseudo-classes qui vont nous permettre de spécifier l'apparence d'un élément en fonction de l'action de la souris.
Ainsi, la pseudo-classe :hover
permet de spécifier l'apparence d'un élément au moment où l'utilisateur le survole avec le pointeur, sans nécessairement l'activer.
La pseudo-class :active
permet de spécifier l'apparence d'un élément au moment où l'utilisateur clique dessus.
Il existe d'autres pseudo-classes : :link
, :visited
, focus
... Je laisse le loin à ceux qui souhaite aller plus loin de les découvrir par vous même.
En pratique,
1 |
|
1 2 3 4 5 6 7 8 9 10 11 12 |
|
À vous de jouer
- Reprenez votre site.
- Dans chaque page HTML, ajouter un bouton (élément
<a>
avec la classebtn
) renvoyant vers Wikipédia. - Dans le fichier CSS définissez les styles pour la classe
btn
. Pensez à utiliser les pseudo-classes" pour modifier le style du bouton en fonction de l'action de la souris.
Comment fait-on un menu de navigation ?
La bonne pratique est de créer un liste non-ordonnées (<ul>
) de liens hypertexte (<a>
) en HTML puis de la stylisez en CSS pour "casser" notamment l'aspect par défaut d'un liste (sens vertical, puce pour chaque item, ...). N'oublions pas de dire qu'il s'agit du menu de navigation principal grace à la balise <nav>
.
En pratique,
1 2 3 4 5 6 7 |
|
D'abord, on redéfinit l'aspect de la liste (plus d'indentation, plus de puce) :
1 2 3 4 5 |
|
Pour un menu horizontal, on modifie le comportement par défaut des éléments li
. Par défaut, ces éléments sont de type block, donc les uns en dessous des autres. On va modifier leur type en inline-block
grâce à la propriété display. Il apparaîtront donc les uns à coté des autres.
1 2 3 |
|
Ensuite, ce n'est qu'une question d’esthétisme. On modifie les couleurs la taille, les marges, l'alignement des items. On réutilise les pseudo-classes vues dans "Comment fait-on un bouton ?" pour modifier l'aspect des éléments au survol de la souris.
Le code entier :
1 2 3 4 5 6 7 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
|
À vous de jouer
- Reprenez votre site.
- Dans chaque page HTML, ajouter un menu permettant de naviguer entre les différentes pages de votre site ; si ce n'est déjà fait ;) .
- Dans le fichier CSS définissez les styles pour ce menu. Pensez à utiliser les pseudo-classes" pour modifier le style des éléments du menu en fonction de l'action de la souris.
Entraînez-vous !
Vous pouvez télécharger la correction.