Cascading Style Sheets

Documents pareils
.. CSS. Damien Nouvel. Damien Nouvel (Inalco) CSS 1 / 15

Formation HTML / CSS. ar dionoea

Tutoriel : Feuille de style externe

HTML, CSS, JS et CGI. Elanore Elessar Dimar

LES GRANDES ETAPES DE CREATION D UN WEB DESIGN

SOUTENANCE ORALE RAPPORT DE PROJET D INFORMATIQUE

STID 2ème année : TP Web/PHP

Travaux dirigés n 10

TP 5 Les CMS, la forme et le fond Internet et Outils (IO2)

ING & NEWSLETTER NEWSLETTER RESPONSIVE

JOOMLA 1.5 avancé SUPPORT DE COURS + annexe

Présentation du Framework BootstrapTwitter

1. La notion de cascade

HTML. Notions générales

RESPONSIVE WEB DESIGN

TP JAVASCRIPT OMI4 TP5 SRC

{less} Guide de démarrage

RAPPORT AUDIT SEO. Élaboré à l'attention de : Monsieur Greber Élaboré par : Cédric Peinado

KompoZer. Composition du site : _ une page d'accueil : index.html. _ une page pour la théorie : theorie.html. _ une page pour les photos : photos.

Gestion Électronique de Documents et XML. Master 2 TSM

Pack Fifty+ Normes Techniques 2013

Initiation à html et à la création d'un site web

Manuel d utilisation du module Liste de cadeaux PRO par Alize Web

HTML5 et CSS3 pour des sites Responsive Web Design

Les outils de création de sites web

Introduction à Expression Web 2

Normes techniques 2011

Bernard Lecomte. Débuter avec HTML

MAILING KOMPOZER... 2 CREEZ UNE PAGE... 2 FORMAT DE LA PAGE... 2 AJOUTER DU TEXTE SUR UNE PAGE... 4

Guide de réalisation d une campagne marketing

Intégrateur Web HTML5 CSS3

Zen, SASS, responsive design

Optimiser moteur recherche

Optimiser les performances d un site web. Nicolas Chevallier Camille Roux

Grille fluide. Une grille fluide sert à structurer la mise en page, la rendre harmonieuse et faciliter le passage au responsive web design

Les sites web avec NVU

UN SITE WEB RESPONSIVE EN UNE HEURE?

SII Stage d informatique pour l ingénieur

INTRODUCTION AU CMS MODX

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

BIRT (Business Intelligence and Reporting Tools)

SUPPORT DE COURS / HTML

Celui qui vous parle. Yann Vigara

Autour du web. Une introduction technique Première partie : HTML. Georges-André SILBER Centre de recherche en informatique MINES ParisTech

2 S I M 1 P H O N E G U I D E U T I L I S A T E U R. Guide d utilisation E-commerce / Prestashop

Note de cours. Introduction à Excel 2007

Tutoriel de formation SurveyMonkey

Utilisation de l éditeur.

Optimiser pour les appareils mobiles

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

SARL DDLX Multimédia Place du général de Gaule Boisseron Tèl : support@ddlx.org. Agence Web. Design Prestashop personnalisé

< Atelier 1 /> Démarrer une application web

Dans nos locaux au 98 Route de Sauve NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

Notes pour l utilisation d Expression Web

Pour en expliquer le principe, on se limitera à deux exemples :

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Media queries : gérer différentes zones de visualisation

Plate-forme de tests des fichiers XML virements SEPA et prélèvements SEPA. Guide d'utilisation

Spétechs Mobile. D e r n i è r e m i s e à j o u r : a o û t 2014

Généralités. javadoc. Format des commentaires. Format des commentaires. Caractères spéciaux. Insérer du code

Évaluation des compétences. Identification du contenu des évaluations. Septembre 2014

Créer une base de données vidéo sans programmation (avec Drupal)

ENVOI EN NOMBRE DE Mails PERSONNALISES

Normes graphiques / Sigma Assistel / Site Internet version 1.0 /

TIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web

Web Site Story Etude, développement et valorisation de votre présence internet

Le logiciel de création de site internet IZISPOT est un outil très puissant et qui est assez simple après quelques temps d utilisation.

Sommaire : Pourquoi créer un site web? Qu est-ce qu un site Web? Les différents types de sites. Quelles solutions peuvent être employées?

INFORMATIONS ET INSTALLATION DU THEME CENATA RESPONSIVE

Programmation Internet Cours 4

1 CRÉER UN TABLEAU. IADE Outils et Méthodes de gestion de l information

GUIDE D UTILISATION DU BACKOFFICE

Guide technique d accessibilité pour la création et la refonte des sites Web de l administration publique. Date : Juillet 2010 Version 1.

Description des pratiques à adopter pour la mise à jour du layout en utilisant le gestionnaire de conception de Sharepoint 2013

Leçon n 4. Analyse graphique Techniques de construction de barres et styles de. Fenêtres d analyse graphique. Leçon n 4

Sana Sellami. Licence Professionnelle SIL

HMTL. Exemple de fichier HTML. Structure d un document HTML. Exemple de fichier HTML. Balises HTML. IFT1147 Programmation Serveur Web avec PHP

Architecture Multi-Niveaux

Déployer les Fonts, Icones, et Images avec Forms Services 11G

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Responsive Web Design. Responsive Design avec HTML 5.0 et CSS3

Logiciels de référencement

WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu

WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu

Manuel utilisateur du CMS Anan6

3. RÉALISATION ET QUALIFICATION D UN PROTOTYPE 3.1 Réalisation d un prototype CRÉATION D UNE PAGE WEB STATIQUE AU FORMAT HTML

GUIDE D UTILISATION DE LA PLATEFORME D ENVOI DE COURRIELS

Responsive Design. Technologies du web. Stéphane Bouvry, 2014

1 INTRODUCTION. PowerBuilder - Introduction. Pascal Buguet Imprimé le 19 août 2004 Page 1

Publier dans la Base Documentaire

Création d un site Internet

Nouveautés de la version moodle 2.7

Atelier de Création de pages Web

CREATION d UN SITE WEB (INTRODUCTION)

Manuel d utilisation du site web de l ONRN

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Transcription:

Cascading Style Sheets Cascading Style Sheets css-intro Code: css-intro Originaux url: http://tecfa.unige.ch/guides/tie/html/css-into/css-intro.html url: http://tecfa.unige.ch/guides/tie/pdf/files/css-intro.pdf Auteurs et version Daniel K. Schneider - David Ott - Vivian Synteta - Natascha Michel Version: 1.1 (modifié le 18/9/07 par DKS) Prérequis Module technique précédent: html-intro Module technique précédent: xhtml-intro Module technique précédent: xml-tech (pour les chapitres sur XML seulement) Autres modules Module technique suppl.: xml-xslt

Cascading Style Sheets -. Abstract css-intro-2 Petite introduction à CSS Objectifs Savoir faire de simples style sheets HTML avec CSS Faire des pages emboîtées sans tables XML avec CSS (Pas de DHTML pour le moment, ce se fera dans un autre module je pense) A faire Améliorer les explications, ce document est difficile à comprendre en auto-formation...

Cascading Style Sheets - 1. Table des matières détaillée 1. Table des matières détaillée 1. Table des matières détaillée 3 2. Introduction aux "Cascading Style Sheets" 5 2.1 Motivation 5 2.2 Principe de base 6 2.3 Ressources 7 2.4 Conseils HTML 7 3. Association d une feuille de style à une page HTML 8 3.1 Styles "inline" 8 3.2 Feuille de style imbriquée dans une page 9 3.3 Feuille de style externe associé à des pages HTML 10 3.4 Multiples feuilles de style 11 3.5 Importation 12 3.6 Feuilles de style client-side 12 4. La notion de sélecteurs 13 4.1 Simple sélecteurs pour les balises 13 4.2 Class et attributs ID 14 A.Les attributs et sélecteurs "class" 14 B.Attribut ID 16 C."wildcard" 16 4.3 Les balises HTML <div> et <span> 17 A.<div> 17 B.Définition "inline" d un style 17 C.Définition externe d un style 18 4.4 Sélecteurs contextuels 19 4.5 Pseudo sélecteurs (élément et classes) 20 A.Pseudo-éléments 20 B.Pseudo-classes 20 5. Les déclarations CSS 21 5.1 Types d éléments et défauts HTML 22 css-intro-3

Cascading Style Sheets - 1. Table des matières détaillée 6. Attributs du texte 23 6.1 Attributs pour la gestion des propriétés d écriture 23 6.2 Alignement du texte 24 7. Les boites CSS et leur positionnement 25 7.1 Anatomie des boites 25 7.2 Les bords, les cadres et le couleur 26 7.3 Le positionnement 29 8. XML avec CSS 31 8.1 Association d une feuille de style 31 8.2 Selecteurs CSS2 pour XML et HTML 32 8.3 Premières opérations à faire 34 css-intro-4

Cascading Style Sheets - 2. Introduction aux "Cascading Style Sheets" 2. Introduction aux "Cascading Style Sheets" css-intro-5 2.1 Motivation Avantages Mises en page HTML et XML sophistiquées DHTML (changement de positionnement d éléments sur x,y et z par exemple) Séparation de contenu et de style: permet de servir une page à plusieurs "sauces" (HTML riche, HTML pauvre mais efficace, HTML vocal,...), donc variantes pour imprimer, le PDA, etc. permet de gérér centralement le "look" de pleines de pages, donc diminue le coût de maintenance rends une page plus "lisible" et plus rapide à télécharger Désavantages Dans CSS1 / CSS2: peu de capacités pour transformer un texte (voir XSLT) Implémentations CSS1: bonnes dans Mozilla/Firefox et potables dans IE 6 Implémentations CSS2: toujours lacunaires. Il existe des tables de compatibilités url: (voir http://tecfa.unige.ch/guides/css/pointers.html)

Cascading Style Sheets - 2. Introduction aux "Cascading Style Sheets" 2.2 Principe de base Feuille de style = jeux de règles qui précise l affichage d un élément HTML ou XML Chaque règle est composée: d un sélecteur (qui indique à quel type d élément la règle s applique) une déclaration (qui comprend une ou plusieurs instructions de mise en page css-intro-6 Exemples (de sensibilisation) H1 { color: red } P { font-face: Verdana, sans-serif ; font-size: 12pt} H1, H2, H3 { color : blue } H1.ChapterTOC, H2.PeriodeTOC, H2.ExerciceTOC, H2.SectionTOC { display: block;text-indent: 30pt; text-align: left; font-size: 14.000000pt; font-weight: Bold; font-family: "Times"; } H1 {color: red ;} Properties declarations H1, H2 {font-face: Verdana, sans-serif ; font-size: 12pt ;} Selectors Style property names Property values

Cascading Style Sheets - 2. Introduction aux "Cascading Style Sheets" 2.3 Ressources url: http://tecfa.unige.ch/guides/css/pointers.html (voir la section links!!) url: http://www.w3.org/style/css/ (CSS page c/o W3C) css-intro-7 2.4 Conseils HTML Mettez des balises fermantes (<p>...</p>, <li>... </li>, etc) Testez avec Mozilla/Firefox, ajustez ensuite pour IE Explorer (et autres navigateurs déficients). Pour être compatible: Pour gérer les anciens browsers (NS 4 et IE 5) comprénant mal CSS il faut écrire des scripts de filtrage (disponibles sur le "web master s sites"). Pour gérer les Netscape 3 etc. pas de problème, ils ignorent les CSS

Cascading Style Sheets - 3. Association d une feuille de style à une page HTML 3. Association d une feuille de style à une page HTML css-intro-8 Il existe plusieurs méthodes 3.1 Styles "inline" On peut définir un attribut style pour chaque élément HTML <p style="color: red; font: 12pt times; margin-left: 2em"> On peut définir un style pour chaque balise. Ce paragraphe contient son propre style, mais ce n est pas très efficace... </p> url: http://tecfa.unige.ch/guides/css/ex/simple-css2.html Il s agit ici d une technique qu il faut mieux éviter, car elle ne respecte pas très bien le principe de la séparation de contenu et de présentation Voir aussi <span> qui permet de définir un style à l intérieur d un paragraphe. <p> On peut définir <span style="color: red;"> une phrase toute rouge </span>. Et revenir à la normale plus tard... </p>

Cascading Style Sheets - 3. Association d une feuille de style à une page HTML 3.2 Feuille de style imbriquée dans une page Déclaration d une feuille de style avec la balise <style> css-intro-9 Exemple 3-1: Simples feuilles CSS imbriquées url: http://tecfa.unige.ch/guides/css/ex/simple-css.html url: http://tecfa.unige.ch/guides/css/ex/simple-css2.html (exemple plus compliqué) Utilisation: La déclaration doit se faire dans le <head> (sinon il peut y avoir des problèmes, par ex. la couleur background du body qui ne s affiche pas) Pour rester compatible avec les anciens navigateurs, il faut commenter les règles CSS comme dans l exemple ci-dessous! <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.2//EN"> <html> <head> <title>simple CSS démo</title> <STYLE type="text/css"> <!-- body {background: white; font-family: Helvetica, Arial, sans-serif;} H2, H3{font-family: Helvetica, Arial, sans-serif;} P.intro {color: blue; margin-left: 4em; margin-right: 2em;}.default {margin-left: 2em;} --> </STYLE> </head>

Cascading Style Sheets - 3. Association d une feuille de style à une page HTML 3.3 Feuille de style externe associé à des pages HTML css-intro-10 Solution efficace pour gérér le look des plusieurs (ou pleins!) de pages La balise <link> doit se trouver dans le <head> Si vous utilisez des caractères non standards dans le texte ("é","ö", etc.) il faudrait déclarer l attribut CHARSET dans le HTML (à vérifier) Pensez à créer un répertoire central pour vos styles! (A tecfa: /web/styles) Vous pouvez regarder le source d une page HTML et ensuite manuellement entrer l URL pour le CSS et le regarder (s il en existe un) Exemple 3-2: Simple feuille CSS externe url: http://tecfa.unige.ch/guides/css/ex/simple-css3.html <html> <head> <link rel="stylesheet" href="simple-css3.css" charset="iso-8859-1" type="text/css"/> <title>simple CSS démo III</title> </head> <body> ATTENTION: Dans le fichier - feuille de style vous mettez juste les déclarations CSS, rien d autre: pas d entêtes, rien d autre!!

Cascading Style Sheets - 3. Association d une feuille de style à une page HTML 3.4 Multiples feuilles de style On peut laisser l utilisateur choisir! dans Mozilla en tout cas (Menu View->Use Style) on peut aussi écrire un programme JavaScript qui le fait url: http://www.alistapart.com/stories/alternate/test.html Pensez à faire une version spéciale pour l impression Exemple de la home page de DKS: <style type="text/css" media="all">@import "/tecfa-people/dks-normal.css";</style> css-intro-11 <link rel="alternate stylesheet" type="text/css" media="screen" title="friendly fonts" href="/tecfa-people/dks-friendly.css" /> <link rel="alternate stylesheet" type="text/css" media="screen" title="bigtype" href="/ tecfa-people/dks-big.css" /> <link rel="alternate stylesheet" type="text/css" media="screen" title="print with URLs" href="/tecfa-people/dks-print-url.css" /> <link rel="alternate stylesheet" type="text/css" media="screen" title="print" href="/ tecfa-people/dks-print.css" /> <link rel="stylesheet" type="text/css" media="print" href="/tecfa-people/dksprint.css" />

Cascading Style Sheets - 3. Association d une feuille de style à une page HTML 3.5 Importation Il s agit d une alternative au "linking" ci-dessus url: http://tecfa.unige.ch/guides/css/ex/simple-css4.html <style> <!-- @import ("simple-css3.css") ; p.default {margin-right: 3em; margin-left: 3em} --> </style> css-intro-12 Attention: Marche mal avec certains Explorer 4 Ne marche pas avec Netscape (4.x)! On peut utiliser cet fait pour filter ces navigateurs... 3.6 Feuilles de style client-side Marche uniquement dans Mozilla et c est très cool: On peut censurer tout ce qu on aime pas, adapter la page à la vue etc. :)

Cascading Style Sheets - 4. La notion de sélecteurs 4. La notion de sélecteurs css-intro-13 Un sélecteur est un "nom" qui indique à quels éléments d une page HTML on desire appliquer une règle. Chaque règle CSS commence nécessairement par un sélecteur. Rappel de la syntaxe pour une règle CSS: Syntaxe: selecteur(s) { propriété: valeur ; propriété: valeur1, valeur2, valeur3 ;... } Il existe plusieurs méthodes pour identifier les éléments, par exemple: on indique le nom d une balise (X)HTML on indique la classe d une balise (X)HTML on indique l identificateur d une balise XHTML on indique le nom d une balise plus sa classe, etc. 4.1 Simple sélecteurs pour les balises On indique le nom d une balise, ou encore une liste séparés par des virgules. H1 {color: green} H2 {color: green} est équivalent à: H1, H2 {color: green} Dans ce cas on utilise CSS pour changer l affichage par défaut des différentes balises Typiquement, on modifie la couleur de certains éléments, la taille des fontes, les marges, etc.

Cascading Style Sheets - 4. La notion de sélecteurs 4.2 Class et attributs ID css-intro-14 A. Les attributs et sélecteurs "class" Mécanisme puissant pour: définir de classes de contenu (indépendamment des balises) pour différencier plusieurs variantes d une même balise Principe: On associe une valeur à l attribut "class" On peut aussi définir le style des enfants de la balise qui a l attribut "class" ; mais il faut indiquer le chemin complet de l arbre (dans l ex., default ul li). il est possible d avoir plusieurs classes par éléments (dans l ex., le 2ème <p>). Lorsque deux styles définissent la même propriété, c est celui qui est le plus L de l élément qui "gagne" (dans l ex., font-size)

Cascading Style Sheets - 4. La notion de sélecteurs Exemple 4-1: Classes dans une simple feuille de style url: http://tecfa.unige.ch/guides/css/ex/simple-css2.html css-intro-15 <STYLE type="text/css"> P.intro {color: blue; margin-left: 4em; margin-right: 2em;}.default ul li {font-size: 0.8em;}.default {margin-left: 2em; font-size:1em;}.bleu {color:red;} </STYLE>... <p class="intro"> Après des années de bricolage infâme... </p> <p class="default bleu"> bla bla </p> <div class="default"> <ul> <li>item 1</li> <li>item 2</li> </ul> <pre> notre classe default marche partout, même pour un para préformaté </pre> </div> Le style.default s appliquera à tous les éléments dont la classe est "default" alors que le style.intro seulement aux balises <p>.

Cascading Style Sheets - 4. La notion de sélecteurs B. Attribut ID css-intro-16 Parfois plus économique d utiliser l attribut ID (p.ex. lorsqu on a un script qui implique des id) on peut aussi combiner les deux (définir un style pour la classe et l id d une même balise) Le selecteur s écrit avec un # devant Si on veut définir les éléments enfants d un éléments avec l attribut id ayant une classe définie, on peut le faire sans passer par les éléments intérmédiaire (pour l ex. ci-dessus, sans ul) C. "wildcard" "Wildcard" * (s applique à tous le éléments) : * { font-size: 12pt; } pratique pour définir une police par défaut pour tous les éléments sans la définir à chaque fois (y compris <pre> et <button>.

Cascading Style Sheets - 4. La notion de sélecteurs 4.3 Les balises HTML <div> et <span> ont été créés spécialement pour un usage avec les feuilles de style css-intro-17 A. <div> peut contenir toutes les autres balises HTML et donc servir à mettre en forme toute une section d une texte (mais attention aux priorités! <div> est un bloc alors que <span> est un élément in-line, cf 5.1 Types d éléments et défauts HTML [22] Il sera pas possible de définir une largeur de 100% -toute la page- pour un span) <div> avec l attribut class peut servir à faire des "custom tags" (voir plus loin) <span> sert à changer une séquence de caractères à l intérieur d une balise B. Définition "inline" d un style Exemple 4-2: Changer la couleur d un partie du texte url: http://tecfa.unige.ch/guides/css/ex/simple-div-span.html <div style="color: blue"> <h1>l influence d un div tag qui aime le bleu</h1> <P> bla bla bla </P> </div>

Cascading Style Sheets - 4. La notion de sélecteurs C. Définition externe d un style css-intro-18 Exemple 4-3: Faire des backgrounds avec une définition externe url: http://tecfa.unige.ch/guides/css/ex/simple-div2.html <style> div.important { background: rgb(204,204,255); padding: 0.5em; border: none; } </style>... <body> <div class="important"> <h1>une section importante</h1> <h2>un sous-titre</h2> <P> Tout le div a son joli background à lui. bla bla bla </P> </div>

Cascading Style Sheets - 4. La notion de sélecteurs 4.4 Sélecteurs contextuels css-intro-19 Exemple 4-4: Simple utilisation d un sélecteur contextuel url: http://tecfa.unige.ch/guides/css/ex/simple-css5.html <STYLE type="text/css"> <!-- P strong {color: red;} --> </STYLE>... <P> Ceci est un paragraph avec un <strong> strong modifié </strong>. En d autres terme cela permet de redéfinir de façon simple le rendering de certaines balises "logiques" comme <em> ou <strong>. </P>

Cascading Style Sheets - 4. La notion de sélecteurs 4.5 Pseudo sélecteurs (élément et classes) Un pseudo sélecteur identifie un élément par des critères autres que balise et classe CSS2 en définit pleins, ci-dessous les éléments de CSS1. Attention: certains navigateurs implémentent mal ces fonctionalités CSS1. A. Pseudo-éléments css-intro-20 permettent d identifier des éléments non-balisés (comme la première lettre ou la première ligne) Marche avec les navigateurs IE 5.5 (à confirmer) et Mozilla Exemple 4-5: Pseudo-sélecteurs url: http://tecfa.unige.ch/guides/css/ex/pseudo-selectors.html <style> P:first-letter { font-size: 500%; color: green } P:first-line { color: green } </style> B. Pseudo-classes Pour rendre plus difficile la lecture des liens :) A:link { color : white } A:visited { color : yellow } A:active {color : red }

Cascading Style Sheets - 5. Les déclarations CSS 5. Les déclarations CSS css-intro-21 Rappel de la syntaxe pour une règle CSS: selecteur(s) { propriété: valeur ; propriété: valeur1, valeur2, valeur3 ;... } Déclarations H1 {color: red} valeurs H1, H2 font-face: Verdana, sans-serif; font-size: 12pt;} Sélecteurs Attention: Les valeurs des propriétés sont séparées par des "," Les pairs "propriétés: valeurs" sont séparées par des ";" [ reste = à développer, voir d autres documentations en attendant] Types Boites Positionnement... propriétés

Cascading Style Sheets - 5. Les déclarations CSS 5.1 Types d éléments et défauts HTML css-intro-22 Avant d utiliser un style, voir quel est l élément html qui s en rapproche le plus. Par exemple, pour faire des titres, se baser sur <h1>, <h2>, <h3>... plutôt que sur <p> ou <div>. En typographie on distingue entre 2-3 types d éléments de base: 1. les blocs (blocks), c.a.d. des éléments qui commencent un nouveau paragraphe. Exemples HTML: <p>, <h2>, <div> 2. Les listes et leurs éléments sont des blocs spéciaux: <li> 3. les "in-line", c.a.d. s insérant dans un paragraphe. Exemples HTML: <b>, <strong>, <span> display: block; display: inline; display: list-item; Pour chaque élément "bloc" il existe un jeu de règles pour définir les marges, la position, les couleurs du texte et de l arrière-plan. On peut même définir leurs positions absolues sur la page. Donc un bloc est une boite qu on remplit avec un contenu selon les règles que l on choisit. Evidémment, il est possible de changer de type, par exemple afficher une liste à puce comme une suite de phrases. Exemple 5-1: CSS positioning - <li> inline url: http://tecfa.unige.ch/guides/css/ex/simple-inline.html Voir aussi 7. Les boites CSS et leur positionnement [25]

Cascading Style Sheets - 6. Attributs du texte css-intro-23 6. Attributs du texte Les attributs les plus utilisés sont les suivants (pleins d autres!) (voir les pointeurs tecfa) 6.1 Attributs pour la gestion des propriétés d écriture Attributs Valeurs se charge de exemple font-family nom de l écriture police font-family: Helvetica; serif famille de police, font-family: Times,serif; écriture de type serif font-size pt, cm taille de police font-size: 14pt; font-style forme d écriture italic italique font-style: italique; font-weight de 100 à 900 épaisseur font-weight: 500; normal correspond à la valeur 400 font-weight: normal; bold correspond à la valeur 700 font-weight: bold;

Cascading Style Sheets - 6. Attributs du texte 6.2 Alignement du texte css-intro-24 Attributs Valeurs se charge de exemple text-align alignement des paragraphes left aligné à gauche, valeur par défaut text-align: left; center centré text-align: center; right aligné à droite text-align: right; justify justifié en forme de text-align: jutify; bloc text-indent pt, cm retrait de la première ligne text-indent: 1cm; line-height pt, cm hauteur des lignes line-height: 14pt; valeur relative écart entre les lignes par rapport à line-height: 1.2; la taille de l écriture

Cascading Style Sheets - 7. Les boites CSS et leur positionnement 7. Les boites CSS et leur positionnement css-intro-25 7.1 Anatomie des boites Une boite (chaque élément "bloc" sauf les tables et autres exeptions qui ont des priorités à part) possède l anatomie suivante: margin (distance par rapport aux autres objets) border (taille du cadre) padding (distance entre le cadre et le contenu) (contenu) Chaque élément correspond à un selecteur CSS qui permet de définir la largeur générale (des 4 cotés) ou encore la largeur de chaque côté. On peut aussi définir dessin et couleur du cadre.

Cascading Style Sheets - 7. Les boites CSS et leur positionnement 7.2 Les bords, les cadres et le couleur css-intro-26 Attributs Valeurs se charge de exemple margin pt, px, cm, % 4 marges body {margin:1cm;} margin-top marge en haut p {margin-top:10px;} margin-bottom marge en bas h3 {margin-bottom:3pt;} margin-left marge à gauche img {margin-left:50px;} margin-right marge à droite p.citation {marginright:10pt;} border pt,px, cm, % largeur du cadre p {border:5px;} border-top etc... border-style h1 {border-top:0.2cm;} style de cadre solid ligne simple p {border-style:solid;} double ligne double h1 {border-style:double;} padding pt,px,cm,%,etc marge intérieures p {padding: 5px;} color background valeur hexa / nom aussi couleur d un élément couleur de l arrièreplan #menu {color:#000000;} body {color:blue;} h1, h2 {background:silver;} Ceci n est qu un apperçu! Il existe notamment des "shortcuts" qu on montre sur la page suivante.

Cascading Style Sheets - 7. Les boites CSS et leur positionnement Les bords, les cadres et la couleur (shortcuts) Exemple: css-intro-27 #content { border-right:2px dotted black; border-bottom:2px dotted black; color: #000; background-color:#ffffcc; padding: 5px 5px 5px 5px; /* haut, droite, bas, gauche */ margin:5px 15px 5px 5px; } H1 { /* 1 cm en haut et en bas, 2cm sur les côtés */ margin: 1cm 2cm; /* 3em en haut, 20% sur les côtés, et 2em en bas */ padding: 3em 20% 2em; }

Cascading Style Sheets - 7. Les boites CSS et leur positionnement css-intro-28 Exemple 7-1: Plusieurs exemples simples avec des boites url: http://tecfa.unige.ch/guides/css/ex/boxing0.html la boite pour le "body" a des lignes pointillés la boite pour un <p> a une petite marge, un bord solide, et une couleur en arrière-plan une partie de ce meme paragraphe est mis dans une boite avec un "span" <body style="border-style:dotted"> <h1>boites</h1> <p>the dashed box is for the "body", the big thick box is for a "p" tag, and the thin box is used within a "span" tag. (View the source).</p> <p style="background-color:#d0d0d0;border-style:solid;border-width:4px; padding:1em;margin:0.1cm;"> Tout est une boite - DKS nov 2003 <span style="background-color:#d0d0d0;border-style:solid;border-width:1px; padding:1pt;margin:1pt;width:50%;position:relative"> <a href="http://validator.w3.org/check/referer">xhtml validation</a> - <a href="http://jigsaw.w3.org/css-validator/check/referer">css validation<a> </span> </p> <p>voir <a href="boxing1.html">boxing1.html</a> pour plus... </p> </body>

Cascading Style Sheets - 7. Les boites CSS et leur positionnement 7.3 Le positionnement css-intro-29 Par défaut les éléments d une page HTML sont affichés séquentiellement un après l autre Mais on peut les positionner selon des coordonnées absolues ou relatives n importe où sur une page (voir les exemples qui suivent) #content{/* les coordonnees selon l horloge: 12, 3, 6, 9 */ float:left; width:80%; color: #000; background-color:#ffffcc; padding: 5px 5px 5px 5px; margin:5px 5px 5px 5px; } #menu{ /* qui sera mis à droite */ position: absolute; right: 0; width: 17%; font:10px/14px verdana, sans-serif; color:black; margin:5px 5px 5px 5px; background-color: #ffffff; } Voir le prochain slide pour une série d exemples

Cascading Style Sheets - 7. Les boites CSS et leur positionnement Exemple 7-2: Positionnement relatif de boites flottantes url: http://tecfa.unige.ch/guides/css/ex/boxing1.html css-intro-30 Exemple 7-3: Positionnement relatif horizontal + vertical url: http://tecfa.unige.ch/guides/css/ex/boxing2.html Exemple 7-4: Un menu: "ul/li" comme boutons url: http://tecfa.unige.ch/guides/css/ex/boxing3.html Exemple 7-5: Positions absolues url: http://tecfa.unige.ch/guides/css/ex/boxing4.html Exemple 7-6: Layout 3-colonnes url: http://tecfa.unige.ch/guides/css/ex/boxing5.html

Cascading Style Sheets - 8. XML avec CSS 8. XML avec CSS css-intro-31 8.1 Association d une feuille de style Il est conseillé d utiliser une feuille externe et ensuite l importer: <?xml-stylesheet type="text/css" href="feuille.css"?> note: pas de feuilles de styles internes comme pour HTML! Voici le début d un fichier: <?xml version="1.0" encoding="iso-8859-1"?> <?xml-stylesheet href="stepbystep.css" type="text/css"?> <!DOCTYPE Stepbystep SYSTEM "stepbystep-ex.dtd"> <Stepbystep xmlns:xlink="http://www.w3.org/1999/xlink"> <Doctitle>ATTENTION: Il ne s agit ici que d une démo XML + CSS. L original de ce fichier se trouve ailleurs et a été modifié sans doute depuis... </Doctitle> <Info> <Author Email="Stephane.morand@tecfa.unige.ch"> </Author> <Version>Version 0.2</Version> <Para>installation brute de postnuke sur le serveur tecfaseed </Para> </Info>

Cascading Style Sheets - 8. XML avec CSS 8.2 Selecteurs CSS2 pour XML et HTML XML nécessite un navigateur qui supporte CSS2 (au moins en partie) A part la notation Balise.classe les sélecteur XML et HTML sont les mêmes! css-intro-32 sélection d un élément Syntaxe: nom_de_l élément Exemple: Step { display: list-item; list-style-type: decimal; } sélection d un élément qui est l enfant direct d un élément Syntaxe: élément_mère > élément Exemple: Step > Title {... } sélection d un élément qui est le descendant d un élément Syntaxe: élément_mère élément Exemple: Step Title {... } Dans l exemple suivant P est un descendant de LI, LI doit être un enfant direct de OL. OL est dans DIV. DIV OL>LI P

Cascading Style Sheets - 8. XML avec CSS sélection d un élément qui est le frère d un élément Syntaxe: élément_frère + élément Exemple: H1 + H2 { margin-top: -5mm } (on réduit la distance) sélection d un élément qui possède un attribut Syntaxe: élément[attribut] Exemple: Title[status] { color: blue; } (tous les titres qui un attribut "status" sont paints en bleu ) css-intro-33 sélection d un élément qui possède un attribut avec une valeur Syntaxe: élément[attribut="valeur"] Exemple: Title[status="brouillon"] { color: red; } (tous les titres qui un attribut "status" avec valeur "brouillon" sont peints en rouge ) Note: au lieu de "=", on a aussi ~= et = (voir la documentation)

Cascading Style Sheets - 8. XML avec CSS 8.3 Premières opérations à faire Il faut d abord indiquer pour chaque élément s il est un "block" ou "inline" Faire sortir les titres Gérer les listes css-intro-34 Exemples /* title et para sont des éléments "block", ils ont une petite marge title, para {display: block; margin: 0.5em;} /* les title sont un peu plus grands */ title {font-size: 1.5em;} /* les item sont des list-item de type bullet */ item {display: list-item;list-style-type: bullet;} /* strong est un élément inline, rendering on italic et bleu */ strong {display: inline; font-style: italic; color: rgb(000,000,128);} Exemple 8-1: Exemple "Stepbystep" url: http://tecfa.unige.ch/guides/css/ex-xml/stepbystep/ (répertoire avec tous les fichiers) Le DTD Stebbystep permet de formatter des instructions de type "pas par pas", par exemple comment installer un logiciel. Exemple 8-2: Récit url: http://tecfa.unige.ch/guides/xml/examples/recit/ ( répetoire avec une solution CSS et une solution XSLT ) La DTD "RECIT" permet d écrire des simples récits avec une grammaire génératrice.