31
M. Larooussi Formatage de documents - CSS École d’été INSAT Août 2006

M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

Embed Size (px)

Citation preview

Page 1: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Formatage de documents -CSS

École d’été INSAT Août 2006

Page 2: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Introduction

• Objectif: fournir un mécanisme pour associer différents styles àun même document

Contenu

Présentations

Page 3: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Introduction

! Initialement conçues pour être utiliséesavec des documents HTML

! Peuvent être utilisées avec desdocuments XML

! CSS1 ⇒ CSS-2 (media)! La norme s’adresse

• Aux utilisateurs• Aux développeurs

Page 4: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

CSS

• Langage de feuilles de style pour documentsHTML• Permet une séparation claire de la structureet du style

=> plus grande indépendance avec le mediautilisé.

• Recommandation W3C depuis le 12 mai1998

Spécification à: http://www.w3.org/TR/REC-CSS2

Page 5: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

Principes

! Feuille de style = ensemble de règles

! Chaque règle spécifie les valeurs quepeuvent prendre les propriétésassociées aux éléments du document

– EM { color : red}

– sélecteur {propriété:valeur; propriété:valeur}

M. Larooussi

Page 6: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Association des feuilles de styleaux documents

! document HTML

• utilisation de l ’attribut style

• <H1 style = “color:blue“>Introduction</H1>

Page 7: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Association des feuilles de style auxdocuments

utilisation de l ’élément style pour inclure unefeuille de style dans le document

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"><HTML>

<HEAD><TITLE>Les feuilles de style CSS</TITLE>

<STYLE type="text/css">H1 { color: blue }

</STYLE></HEAD><BODY><H1>Introduction</H1></BODY>

</HTML>

Page 8: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Association des feuilles de style auxdocuments

Utilisation de l ’élément LINK pour associer unefeuille de style au document

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"><HTML>

<HEAD><TITLE>Les feuilles de style CSS</TITLE><LINK rel="stylesheet" href="cours.css"type="text/css">

</HEAD><BODY>

<H1>Introduction</H1>...

</BODY>

</HTML>

Page 9: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Généralités

• Chaque règle est constituée de 2 parties:-Un qui spécifie les éléments du document auxquelsla règle s’applique:

-Une partie déclaration qui spécifie les valeurs despropriétés

H1 { color: blue }• La partie déclaration peut comporter plusieurs

spécifications de valeurs de propriétés; dansce cas, les spécifications sont séparées par lecaractère “;”

Page 10: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Exemples

• H1 {color:blue; text-align: center}

• H1 { font-weight: bold; font-size: 12pt;line-height: 14pt; font-family: Helvetica;font-variant: normal; font-style: normal;font-stretch: normal; font-size-adjust:none }

• H1 { font: bold 12pt/14pt Helvetica }

Page 11: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Propriétés

! Pour chaque propriété, la norme CSSspécifie• la syntaxe

• une éventuelle valeur par défaut• les éléments auxquels elle s ’applique• si elle est héritable• comment interpréter les pourcentages• les media pour lesquels elle a un sens

Page 12: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Exemples de valeurs

! Nombre entier ou réel! Longueur (unités absolues ourelatives)

! PourcentageP {font-size: 12px}H1 {margin: 0.5in}P { line-height: 120% } /* 120% de 'font-size' */

Page 13: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Spécification des couleurs

• Les attributs suivants permettent decontrôler la couleur:

- color pour la couleur du texte;

- background-color pour la couleur du fond;

- background pour un fond texturé ou coloré.

Page 14: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Présentation du textela fonte des caractères:

- font-family ,font-style,font-variant,font-style

- • D'autres attributs permettent de modifierl'apparence du texte:- text-decoration; text-transform.

• Les attributs suivants permettent de contrôlerla présentation des paragraphes:

- text-align, text-indent, lign-height, word-spacinget letter-spacing

Page 15: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Exemples de valeurs

! Spécification des couleursBODY { background:

url("http://www.bg.com/pinkish.gif") }

BODY {color: black; background: white }

EM { color: #ff0000 } /* #rrggbb */

EM { color: rgb(255,0,0) } /* integer range 0 - 255 */

EM { color: rgb(100%, 0%, 0%) } /* float range

Page 16: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Héritage

• En général les propriétés sont héritées dupère

• Par exemple EM est bleu dans: H1 { color:blue } <H1>Le titre <EM>est</EM>important!</H1>

• Style sur BODY == "style par défaut": BODY{ color: black; background: url(texture.gif)white; }

• Exceptions: background, pourcentages...

• Possible de forcer l'héritage: inherit

Page 17: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Multiplicité des spécifications destyle

! Définies par l ’auteur

! Définies par l ’utilisateur

! Définies par l ’application

! de plus, les feuilles de style peuvent êtreimportées

--> règles de résolution de conflitspotentiels

Page 18: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Cascading

! Chaque règle peut être spécifiée comme étantnormale ou importante/* From the user's style sheet */P { text-indent: 1em ! important }P { font-style: italic ! important }P { font-size: 18pt }

/* From the author's style sheet */P { text-indent: 1.5em !important }P { font: 12pt sans-serif !important }P { font-size: 24pt }

Page 19: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Résumé

! Règles importées: régles locales > règlesimportées! Règles normales: auteur > utilisateur >application! Règles importantes: utilisateur > auteur >application

! Spécification spécifiques > propriétés héritées! En cas de conflit: la dernière règle spécifiée s’applique

Page 20: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Sélecteurs

! Spécifie les éléments auxquels s’appliquent lespropriétés

• un élément spécifique

• tous les éléments du document

• les éléments d ’un type donné

• des éléments spécifiés en fonction de leuremplacement dans la structure logique du document

• les éléments spécifiés en fonction des attributs

• les éléments appartenant à des classes

• pseudo elements

Page 21: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Sélecteurs

• Spécificité d ’un sélecteur = nombreobtenu par la concaténation de 3valeurs

• le nombre d ’attributs ID

• le nombre d ’autres attributs ou classes

• le nombre de noms d ’éléments

! Les pseudo-éléments sont ignorés

Page 22: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

L’attribut Class

• Appliquer des déclarations à un grouped’éléments

• Ex: <P CLASS=citation> Mieux vaut tard que jamais</P>

• Nom de la classe= nom isolé + chiffres+ tirets

Page 23: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

L’attribut ID

• Prescrire des formatage pour deséléments isolés

• # caractérise les ID

• Une seule fois dans le document

Page 24: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Sélecteur contextuelH1 EM { color: red } :Affecte uniquement les

éléments EM descendants d'un H1H1 > EM { color: red }: Affecte uniquement les

éléments EM fils d'un H1UL LI { font-size: small } UL UL LI { font-size:x-small }

– Règle 1: éléments LI ayant au moins un ancêtreUL– Règle 2: éléments LI ayant au moins deuxancêtres UL

– Conflit: le sélecteur le plus spécifique l'emporte

Page 25: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Pseudo-classes et pseudo-éléments

• Sélection indépendante de la structureHTML

• Pseudo-classes:• A:link { color: red } /* unvisited */ A:visited {color: blue } A:active { color: lime } DIV >P:first-child { text-indent: 0 } :lang(fr) > Q {quotes: '« ' ' »' }

• Pseudo-éléments:• P:first-line { font-style: small-caps } P:first-letter { font-size: 200% } P.special:before{content: "Special! "}

Page 26: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Commentaires

Identiques à ceux de C:

• EM { color: red } /* red, really red!! */

Page 27: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Les unités

• Longueurs:– relatives: "0.5em", "1ex", "10px"

– absolues: "0.5in", "3cm", "12pt"..

• Pourcentages: "120%"

• Couleurs: "black", "#f00","rgb(255,0,0)"...

Page 28: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Positioning

• flottant

• relatif

• absolu ou fixe• IMG.icon { float: left; margin-left: 0; } #header { position: fixed;

width: 100%; height: 15%; top: 0; right: 0; bottom: auto; left: 0; }

Page 29: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Et d'avantage...

différents types de media

pagination (règle @page)

feuilles de styles orales

curseurs

génération de contenu (compteurs)

...

Page 30: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Validation CSS

• Feuilles de style valides = garantie derésultats; cas d'erreurs non spécifiés

• Spécification officielle:http://www.w3.org/TR/REC-CSS2

• Outils et services:http://jigsaw.w3.org/css-validator/

Page 31: M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006

M. Larooussi

Evolution future de CSS

• CSS3 en préparation:

• support pour entêtes, bas de pages,multi-colonnes

• internationalisation: texte vertical et engrille

• ...