Partie IV :
CSS, Applettes, HTML-médias
Djamel Seriai
seriai@ensm-douai.fr
http://csl.ensm-douai.fr
2
Les feuilles de style ont été mises au point afin de compenser les manques
du langage HTML en ce qui concerne la mise en page et la présentation.
Le HTML offre un certain nombre de balises permettant de mettre en
page et de définir le style d'un texte, toutefois chaque élément possède
son propre style, indépendamment des éléments qui l'entourent.
Ensuite, de sorte à définir le langage par défaut des feuilles de style, il faut
insérer une commande <META> spécifique dans l'en-tête du document
HTML qui respecte les nouvelles spécifications du W3C grâce au DTD.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
</HEAD>
<BODY>
...
</BODY></HTML>
8
<html>
<head>
<title>style interne au document</title>
<style type="text/css>
html, body { font-family: sans-serif; background-color: white }
h1, h2 { color: blue }
p {text-align: justify }
</style>
</head>
</html>
Voir un exemple
11
Le fichier .html
Voir un exemple
15
contents
sssDéfinit un document qui sert de table des matières.
index Définit un document servant d'index thématique pour la série de documents dont fait partie le
document courant.
glossary Définit un document qui contient un glossaire pour le document courant.
next Définit le prochain document lorsque le document courant fait partie d'une série de documents
chaînés. Cette valeur est généralement utilisée pour l'attribut rel.
previous Définit le document précédent lorsque le document courant fait partie d'une série de documents
chaînés. Cette valeur est généralement utilisée pour l'attribut rev.
start Définit le premier document d'une séquence de documents. Ce type de lien permet aux moteurs de recherche de
trouver quel est le premier document d'une collection, selon l'idée première de son auteur.
help Définit un document d'aide (informations complémentaires, liens vers d'autres sources
d'informations, etc.)
bookmark Définit un signet. Un signet est un lien sur un point d'entrée particulier dans un document "étendu".
L'attribut title pourra être utilisé pour nommer le signet. Notez que plusieurs signets peuvent être
définis dans un document.
17
– Les styles spécifiés pour des balises HTML seront tous chargés à
condition qu'ils soient tous affectés à des éléments différents.
Voir un exemple
19
Balise[Attribut]
Balise[Attribut = Valeur]
La balise cible doit non seulement contenir l'attribut mais également TABLE[BORDER="0" <TABLE
correspondre exactement à la valeur souhaitée. ] { BORDER="0">
background-color:
rgb(0, 120, 255)
}
Balise[Attribut ~= Valeur]
La valeur exigée doit être contenu dans la balise, mais toutefois sans qu'elle A[title~="site"] { <A
corresponde exactement. outline-style: outset HREF="page.html"
} TITLE="... site ...">
Balise[Attribut |= Valeur]
Cela signifie que le contenu de l'attribut devra commencer impérativement par A[title="Allez"] { <A
la valeur désirée. font-color: aqua HREF="page.html"
} TITLE="Allez ...">
32
Les commentaires
Afin d'améliorer la lisibilité et la maintenance des documents, il est
nécessaire de commenter le code de programmation à l'intérieur des balises
d'insertion de définition de style.
Ensuite, l'attribut CLASS est utilisé dans le but de faire référence à un nom
de classe afin que lui soit appliqué le style en question.
L'attribut CLASS est utilisable dans pratiquement toutes les balises HTML
sauf : HTML, HEAD, BASE, META, TITLE, SCRIPT, STYLE, PARAM,
BASEFONT
35
<HTML>
<HEAD>
<STYLE>
<!--
Sélecteur de balise.Nom de classe
... {
Propriété1:Valeur1;...}
...
Règles de style
... -->
</STYLE>
...
</HEAD>
<BODY>
<Balise CLASS="Nom de classe">
</balise>
...
Diverses commandes HTML
...
</BODY>
</HTML>
36
Sélecteurs de classes
Exemple
Le site web d'un magasin pourra par exemple créé une classe pour le
description de ses produits, une autre pour le mode d'emploi, une autre
encore pour les commentaires des utilisateurs :
<style type="text/css">
.descrition { text-align: justify ; font-color: black}
.mde { text-align : left; font-size : 90%}
.comments { font-style : italic}
</style>
Les pseudo-classes
Les pseudo-classes dynamiques
Leur fonctionnement dépend du navigateur. Si ce-dernier ne reconnaît
pas la pseudo-classe, elle sera ignorée, c'est le cas par exemple de
:focus avec le navigateur de Netscape.
Windows Macintosh
NE NE NE IE5 OP OP OP NE NE NE
IE5 IE6 IE4 IE5
4 6 7 5 5 6 7 4 6 7
39
Les pseudo-classes
La pseudo-classe descendante
Cette pseudo-classe permet de déterminer un style spécifique à une balise
placée en première position au sein d'un élément parent.
Cette pseudo-classe peut être utilisée avec les classes descendantes afin de
localiser contextuellement la balise en question et de lui appliquer un style.
Les pseudo-classes
Les pseudo-classes de langue
Cette pseudo-classe est utilisée afin de déterminer la langue utilisée
dans une balise ou parfois dans le document afin d'appliquer un style
particulier adapté à la langue usitée.
HTML:lang(en) {
quotes: '" ' ' "' }
HTML:lang(fr) {
quotes: '« ' ' »' }
44
Les pseudo-éléments
Les pseudo-éléments Before et After
Les auteurs peuvent spécifier le style et l'emplacement d'un
contenu généré avec les pseudo-éléments :before et :after.
– La pseudo-élément :before {...} permet d'affecter un contenu avant
le contenu initial d'un élément.
– La pseudo-élément :after {...} permet d'affecter un contenu après
le contenu initial d'un élément.
Les pseudo-éléments
<HTML>
Les pseudo-éléments Before et After
<HEAD>
<STYLE>
<--
Balise:before... {Propriété1:Valeur1;...}
Balise:after... {Propriété1:Valeur1;...}
...
Règles de style
...
-->
</STYLE>
...
</HEAD>
<BODY>
Windows Macintosh
<Balise>Contenu... </Balise>
...
I Diverses commandes HTML
N N N I I O O O N N N I I
E
E E E E
5
E P P P E E E E E ...
4 6 7 5 6 5 6 7 4 6 7 4 5
5 </BODY>
</HTML>
47
<style type="text/css">
#special { font-size: 120% } </style>
...
<p id="special">Paragraphe avec l'identificateur "spécial"</p>
48