Professional Documents
Culture Documents
CSS
Le World Wide Web a introduit les feuilles de styles en cascade pour
compléter la langage HTML.
Les CSS permettent de gérer l'apparence des documents.
Les feuilles indiquent aux balises HTML leur comportement ou style.
Les styles
Un style rassemble tous les attributs que l'on peut appliquer à des types
de textes similaires.
◦ Attribut : taille, format
◦ Textes similaires : titres, en-têtes, pied de page
<BODY>
<H1 style="color:blue">La page personnelle de Bach</H1>
<P >Jean-Sébastien Bach était un compositeur prolifique.
</BODY>
@charset "iso-8859-1";
H1 { Sélecteur simple
color : red ;
}
Fichier.CSS
Classe et attribut CSS
... à certaines élément portant un attribut "class=...." :
◦ code css
◦ p.vert { color: #008000; }
◦ code html
◦ Le contenu de toutes les balises
<html><head> <html><head>
<style type="text/css"> <style type="text/javascript">
P {font-size: 16pt; color: blue;} tags.P.fontSize=16;
</style> tags.P.color="blue";
</head> </style>
</head>
Création de classes
Modifier les balises existantes n'est pas suffisant quand il s'agit
d'affecter un style à une partie de texte.
Par exemple dans cette page, les parties de code sont en police
courier vert, grâce à la classe de style "code" qui est déclarée
ainsi :
<HTML><HEAD>
<STYLE>
.code {font-family:courrier;color:green}
</STYLE>
</HEAD>
L'attribut style d'une balise reçoit les propriétés de style. Il est toutefois
préférable de déclarer une classe pour regrouper la mise en forme.
Classes de style - attribut
CLASS
On peut définir différentes "classes"
◦ une classe particulière pour un élément particulier (<h1>, <p>,
<cite>, …)
◦ P.bleu {color: blue;}
◦ P.i {font-style: italic;}
◦ s'applique aux paragraphes qui se revendiquent de la classe "bleu" ou
"i"
◦ une classe générale associée à un élément particulier
◦ P {font-size: 16pt; color: red;}
◦ s'applique à tous les paragraphes
◦ une classe particulière pour n'importe quelle balise
◦ .vert {color: green;}
◦ s'applique à toute balise revendiquant la classe "vert"
◦ attention ! on ne peut pas cumuler des classes
Un exemple
<!-- 1.html -->
<html><head>
<style type="text/css">
.vert {color: green;}
P {font-size: 16pt; color: red;}
P.bleu {color: blue;}
P.italic {font-style: italic;}
H1.titre1 {border: solid; border-width: 1;
text-align: center; color: cyan;}
</style>
</head><body>
...
</body></html>
Les sous-classes de style - attribut
ID
Permet de faire varier certains paramètres d'une classe
Exemple : une classe définit un style général de
paragraphe mais on souhaite pouvoir changer
uniquement la définition de la couleur
◦ première possibilité : faire une deuxième classe (la duplication
de code est toujours une mauvaise chose)
◦ mieux : définir un modificateur qui n'agit que sur les
paramètres souhaités
# est le caractère permettant la définition de sous-
classes
Les sous-classes de style - attribut
ID
Exemples :
◦ <style type="text/css">
◦ .standard {color: green; font-size: 10pt;}
◦ #cyan {color: cyan;}
◦ P {font-size: 16pt; color: yellow;}
◦ P.special {font-style: italic; color: red;}
◦ P#bleu {color: blue;}
◦ </style>
L'attribut ID
◦ permet de réaliser une exception dans une classe ou être
utilisé seul (alors équivalent à CLASS)
Un deuxième exemple
<html><head>
<style type="text/css">
</style>
</head><body>
Impossible...
</body></html>
La balise <LINK>
Permettra de référencer d'autres fichiers externes dans le futur
Entre <head>…</head>
Trois attributs
◦ REL="stylesheet" indique que le fichier inclus est une feuille de style
(d'autres valeurs dans le futur…)
◦ TYPE="text/css" ou "text/javascript" - norme de styles utilisée dans le
fichier
◦ HREF="mystyles.css" permet d'indiquer l'URL de la feuille de style
Il est possible de lier plusieurs feuilles de style tout en continuant
d'utiliser des définitions internes
Définition ponctuelle de style
◦ <P STYLE="font-size=35; color=blue;">P en bleu 35</P>
Compléments sur les styles
Groupement de balises
◦ H1, H2, H3 {color: red;}
◦ tous les titres H1, H2, H3 seront en rouge
Sélection contextuelle d'application d'un style
◦ H3 A {color: black;} : les liens définis dans <H3>…</H3> seront
noirs
◦ H3 H3 A {color: red;} : les liens dans
◦ <H3><H3><A>…</A><H3></H3> seront rouges
Héritage des styles
◦ <H1 class="titre1"><cite>HTML</cite></H1>
◦ des balises imbriquées dans des balises de niveau supérieur
héritent du style défini dans ces balises
Le cas particulier de la balise de
lien A
La balise <A> est particulière, car elle peut
être dérivée selon l'action du visiteur
On peut donc vouloir des apparences
différentes de cette balise suivant que l’on
passe dessus, que l’on clique dessus ou
pour indiquer que l’on a déjà visité ce lien
Le cas particulier de la balise de
lien A
On obtient ainsi 4 balises a
a:link { text-decoration:none;}
a:hover {text-decoration:underline;}
a:active {color:red;}
a:visited {color:green;}
<HTML><HEAD>
<LINK rel="StyleSheet" type="text/css" href="style.css">
</STYLE>
</HEAD>
La balise <LINK> fait un lien entre la page en cours et le fichier de style
externe.
Exercices
Créez une page Web contenant des tables et insérez y le fichier de style
précédemment défini.
Les propriétés de style
Nous avons vu comment déclarer les styles dans une page.
La norme CSS a prévu de nombreuses propriétés pour les différents objets
HTML.
Toutes ces propriétés ne sont pas prises en compte dans tous les navigateurs.
Il vous faut donc toujours vous assurer que le style que vous utilisé est adapté
au(x) navigateur(s) que vous utilisez !
Les propriétés de police
Propriété Signification Valeurs possibles
font-size:12px
font-size Hauteur de police en points ou pixels
font-size:10pt
font-family:arial,verdana
font-family Nom de police
font-family:sans serif
font-weight:bold
font-weight Épaisseur de la police (gras)
font-weight:normal
font-style:italic
font-style Style de police (italic)
font-style:normal
color:green
color Couleur de police
color:#FFCC00
Les propriétés de texte
Propriété Signification Valeurs possibles
text-decoration:overline
text-decoration:line-through
text-decoration Attribut de soulignement
text-decoration:underline
text-decoration:none
text-align:left
text-align Alignement de paragraphe (balise P) text-align:right
text-align:center
text-indent:25px
text-indent Indentation de paragraphe (balise P)
text-indent:-15px
text-transform:capitalize
text-transform Transformation des majuscules text-transform:uppercase
text-transform:lowercase
Les propriétés d'arrière-plan
Propriété Signification Valeurs possibles