Première feuille de style

On a vu qu'il faut séparer la forme et le fond d'un document XHTML. On va maintenant voir comment relier la forme et le fond : comment utiliser les styles pour mettre en page un document XHTML

Aperçu général d'un style CSS

Une feuille de style ne contient qu'une suite de règles CSS, voyons à quoi elles ressemblent.

Exemple tiré de la feuille de style de ce site :

/* Par defaut */
body {
    background-color:#DBF9F0;
    color:black;
    font-family:"Arial", sans-serif;
    padding:0;
    margin:10px 10px 100px 10px;
    font-size:0.8em;
}
/*Titres*/
h1#header {
    position:absolute;
    left:0;
    top:0;
    background-position:top left;
    background-color:transparent;
    background-image:url("images/banniere.gif");
    background-repeat:no-repeat;
    height:150px;
    width:100%;
    padding:95px 60px 0 20px;
    margin:0;
    text-align:left;
    font-size:1.2em;
    font-style:oblique;
}

Un style est composé de 3 parties :

Les commentaires
Ils sont identifiés par les caractères /* et */
Les selecteurs
Désignent les éléments auxquels s'appliquent les styles
Les règles
Ce sont toutes les lignes entre { et }
Chaque ligne se termine par un ";"

CSS : la cascade

Une des notions importantes concernant les CSS est la notion d'heritage : lorsqu'on définit un style pour une entité, celui ci se transmet aux enfants.

De plus, si on définit 2 fois une propriété CSS, c'est celle qui sera rencontrée en dernier qui prendra effet.

Exemple :

html {
    font-family:Arial;    
}
h2 {
    font-family:Helvetica;    
}

Dans cet exemple, tous les textes de la page seront représentés avec la police Arial, sauf les titres de niveau 2. Pas besoin de spécifier la police pour toutes les balises qu'on utilise

Attention : toutes les propriétés s'héritent sauf les propriétés de bloc : margin, padding, width, height, position, ....

Inclure des styles dans une page web

La technique à utiliser le plus souvent est l'inclusion de feuille externe : elle permet de régler l'apparence du site à un seul endroit. De plus cette feuille sera mise en cache du navigateur des utilisateurs et ne sera pas rechargée par la suite : gain de bande passante.

Feuille de style externe

Le meilleur moyen est d'insérer les lignes suivantes dans la partie head du document :

<style type="text/css">
    @import url('style.css');
</style>

Styles spécifiques

Tecchnique à utiliser le moins possible : pour des styles spécifiques à une page. On perd presque tous les avantages à utiliser CSS

Il faut inclure les règles CSS entre les deux balises suivantes, dans le head

Exemple :

<style type="text/css">
    p {
        color:black;
        background-color:white;
    }
</style>

Styles dans les balises

A utiliser avec lencore plus de parcimonie que pour la technique précédente : on perd encore des avantages à utiliser les CSS

Exemple :

<p style="color:black;background-color:white">Mon paragraphe</p>

On n'utilise pas les selecteurs ici vu que le style s'applique uniquement à la balise en question

Exercice

Créer une feuille de style que vous placez à la racine de votre site. Incluez ensuite cette feuille de style externe dans votre document XHTML.
Créer une règle définissant une couleur de texte (noire) et une couleur de fond (blanche) pour tout votre document

Utilisez le selecteur de balise body, les propriétés color et background-color

Vous venez d'inclure votre première feuille de style

Le résultat pour la page XHTML
Le résultat pour la feuille de style
Je vous l'accorde il n'y a pas de différence, mais on n'a rien spécifié de différent à ce que le navigateur fait par défaut.