Langage HTML (suite).
Transcription
Langage HTML (suite).
Les cadres ou (frames) Les images sensibles Feuilles de style Langage HTML (suite). Walid Belkhir Université de Provence [email protected] http://www.lif.univ-mrs.fr/∼belkhir/ 1 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Plan de la partie 1 (2 séances) Internet et le Web (cours 1) Un outil pour le Web : le langage HTML (cours 1) Notions avancées de HTML : (aujourd’hui) Les cadres. Les image sensibles. Les feuilles de styles. 2 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Plan 1 Les cadres ou (frames) 2 Les images sensibles 3 Feuilles de style 3 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Les cadres Création des cadres indépendant à l’intérieur d’une fenêtre Accélération du chargement de la page seule le cadre qui change est chargé Une page HTML est souvent divisée en : un petit cadre contenant des index (liens) un grand cadre contenant les données à afficher NB. Un cadre n’a pas d’URL. 4 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Définition des cadres : balise <FRAMESET> Pour définir des cadres on utilise la balise <FRAMESET>...</FRAMESET> elle contient la description de chacun des cadres présents pas de balise <BODY> Un exemple Cela donne <HTML> <HEAD> <TITLE> Mise en place des frames </TITLE> </HEAD> <FRAMESET cols=”20%, 80%”> <frame src=”menu.html” name=”menu”> <frame src=”cont.html” name=”cont”> </FRAMESET> </HTML> 5 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Attributs de la balise <FRAMESET> ROWS : division en zones horizontales ROWS=”h1,h2,...,hn” hi peut être hi=n : hauteur du cadre en pixels hi=n% : hauteur du cadre en % de la taille de la zone mère ex : pour avoir 2 frames horizontales de taille identique : <frameset rows=”50%,50%”> COLS : division en zones verticales COLS=”l1,l2,...,ln” FRAMEBORDER : frontières avec effet 3D valeurs : yes (1) ou no (0), 1 par défaut BORDERCOLOR : couleur des bordures BORDER : largeur de la bordure BORDER=”0” =⇒ cadres invisibles 6 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Attributs de la balise <FRAME> src=”URL de la page à afficher dans le cadre” name=”nom du cadre” pour référencer le cadre afin qu’il devienne la cible d’un autre lien hypertexte MARGINWIDTH=”n” (15 par défaut) nombre de pixels entre les frontière gauche et droite de la zone et le document HTML à afficher dans la zone MARGINHEIGHT=”n” nombre de pixels entre les frontière haute et basse de la zone et le document HTML à afficher dans la zone NORESIZE : pas de valeur le navigateur empêche le redimensionnement de la zone à l’aide de la souris. 7 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Les attributs de la balise <FRAME> SCROLLING=”yes / no / auto” indique si la zone doit posséder une barre de défilement yes : affiche une barre même si le document est plus petit que le cadre no : n’affiche jamais la barre (des parties de la page peuvent ne pas être atteinte) auto : la barre apparaı̂t si nécessaire (valeur par défaut) 8 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Utilisation des cadres : attribut target target=”nom du cadre” : attribut de <A> et <FORM> désigne un cadre cible du lien nom : nom local du frameset Fichier index.html <HTML> <HEAD> <TITLE> Mise en place des frames </TITLE> </HEAD> <FRAMESET cols=”20%, 80%”> <frame src=”menu.html” name=”menu”> <frame src=”cont.html” name=”cont”> </FRAMESET> </HTML> Fichier menu.html <html> <head> <title> mise en place de frames </title> </head> <body> Menu <a href=”c1.html” target=”cont”> Cours 1 </a> <a href=”c2.html” target=”cont”> Cours 2 </a> <a href=”c3.html” target=”cont”> Cours 3 </a> </body></html> 9 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Utilisation des cadres : attribut target If faut créer cont.html, c1.html ... Fichier cont.html Fichier c1.html <HTML> <HEAD> <TITLE> Mise en place des frames </TITLE> </HEAD> <BODY> ici apparaitra le contenu </BODY> </HTML> <HTML> <HEAD> <TITLE> Cours 1 </TITLE> </HEAD> <BODY> Outis Web 1 ... </BODY> </HTML> 10 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Les liens et les cadres : attribut target L’attribut target : contient le nom d’un cadre existant (la cible est affiché dans le cadre nommé) si target n’est pas renseigné alsors la cible est affiché dans le cadre courant si target contient le nom d’un cadre inexistant alors la cible est affichée dans une nouvelle fenêtre target peut contenir une valeur réservée : self : la cible est affichée dans le cadre où est définie le lien parent : la cible affiché dans le cadre père (celui qui l’a créé) blank :la cible est affichée dans une autre fenêtre sans structure de cadre top : la cible affichée replace la fenêtre courante ( =⇒ ) suppression de tous les cadres utiliser top dès qu’un lien pointe sur une page extérieure 11 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Imbrication de cadres <HTML> <HEAD> <TITLE> Imbrication des cadres </TITLE> </HEAD> <FRAMESET row=”25%,75%” frameborder=”yes”> <frame src=”haut.html” name=”haut” > <FRAMESET cols=”70%,30%” border=”10”> <frame src=”bas gauche.html” name=”basgauche”> <frame src=”bas droit.html” name=”basdroit”> </FRAMESET> </FRAMESET> </html> 12 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Plan 1 Les cadres ou (frames) 2 Les images sensibles 3 Feuilles de style 13 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Images sensibles (cliquable) Images et liens <a href=”http ://yahoo.com”> <img src=”photo.jpg”> </a> permet d’afficher une image ”photo.jpg” et en cliquant dessus d’aller sur ”http ://yahoo.com” Principes des images cliquables : l’image est découpée en zones associer un lien à chaque zone de l’image 14 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Le système de coordonnées et les zones il faut définir les zones en pixels une zones peut être un rectangle, cercle, ... système de coordonnées : 15 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Images sensible avec USEMAP Définition d’une image sensible : <img src=”ph.jpg” usemap=”#3zones”> Définition d’une carte (map) : <map name=”3zone”> ... </map> Définition d’une zone dans la carte : <area shape=”fig” coords=”x0,y0,x1,y1” href=”url”> fp peut prendre les valeurs : rect càd rectangle (angles supérieur gauche et inférieur bas) poly càd polygone (coordonnées de chaque extrémité du vecteur) circle càd cercle (centre et rayon) 16 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Un exemple <html> <head> <title></title> </head> .... <body> <map name=”mon map”> <area shape=”rect” coords=”0,0,180,180” href=”page1.html”> <area shape=”rect” coords=”0,230,160,460” href=”page2.html”> <area shape=”rect” coords=”160,230,250,460” href=”yahoo.fr”> </map> <img src=”me.jpg” usemap=”#mon map”> </body> </html> 17 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Plan 1 Les cadres ou (frames) 2 Les images sensibles 3 Feuilles de style 18 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Principes des feuilles de style Distinction entre la structuration du texte et les propriétés typographique appliquées au texte Possibilité de définir certaines propriétés aux balises HTML Plusieurs documents peuvent partager les mêmes propriétés typographiques L’apparence des documents peut facilement être modifiés en utilisant les styles préalablement définis 19 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Principes des feuilles de style Les styles peuvent être définis directement dans la page HTML le mieux est de les stocker dans un fichier séparé (appelé feuille de style) Description des feuille de style se fait à l’aide de CSS : Cascading Style Sheets langage déclaratif type HTML 20 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Principes des feuilles de styles Possibilité d’imbriquer dans un même document plusieurs styles avec un niveau de priorité différent les propriétés non définies pour la balise courante sont héritées des balises qui contiennent la balise courante un style définie dans une page HTML est plus prioritaire qu’un style défini dans un fichier dans un fichier externe 21 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style La balise <STYLE> Entre <head> ... </head> L’attribut TYPE : text/css <HTML> <HEAD> <style type=”text/css”> P{font-size : 20 pt ; color : blue ; } </style> </HEAD> ... 22 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Classes de style : attribut CLASS On peut définir différentes ”classes” : une classe générale associée à un élément particulier : P {font-size : 20 pt ; color : red ; } =⇒ s’applique à tous les paragraphes une classe particulière pour n’importe quelle balise : .vert{ color : green ;} =⇒ s’applique à toutes balise revendiquant la classe ”vert” une classe particulière pour un élément particulier : (<h1>, <P>, ...) P.bleu{color : blue ;} P.i{font-style : italic ;} =⇒ s’applique aux paragraphes revendiquant la classe ”bleu” ou ”i” 23 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Un exemple <HTML><HEAD> <style type=”text/css”> .vert{color : green} P{font-size : 16pt ; color : red ;} P.bleu{color : blue} P.italic{font-style : italic ;} H2.titre{border-width : 1 ; text-align : center ; color : red ;} </style> </HEAD><BODY> ... </BODY></HTML> 24 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Les sous-classes de style : attribut ID Permet de varier certains paramètres d’une classe Ex : une classe définit un style général de paragraphe mais on souhaite changer seulement la définition de la couleur première solution : faire une 2ème classe =⇒ la duplication du code est une mauvaise idée mieux : définir un modificateur qui n’agit que sur les paramètres souhaités # permet de définir des sous-classes 25 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Les sous-classes de style : attribut ID Exemples : <style type=”text/css”> .standard{color : green ; font-size : 10pt ;} #vert{color :green} P{font-size :20pt ; color :yellow ;} P.special{font-style : italic ; color :red} P#bleu{color :blue ;} </style> L’attribut ID permet de faire une exception dans une classe ou être utilisé seul (donc il est équivalent à CLASS) 26 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Un exemple <html><head> <style type=”text/css”> .standard{color : green ; font-size : 10pt ;} #vert{color :green} P{font-size :20pt ; color :yellow ;} P.special{font-style : italic ; color :red} P#bleu{color :blue ;} </style> </head><body> <p> redéfinition du standard P <p> <p class=”standard”> P classe standard </p> <p class=”special”> P classe special </p> <p class=”standard” id=”vert”> P classe standard mais vert </p> <p class=”standard” id=”bleu”> P classe standard mais bleu </p> <p class=”special” id=”bleu”> P classe special mais bleu </p> <h1 class=”standard” id=”vert”> h1 classe standard vert </h1> ID devient une classe ... <h1 id=”vert”> h1 mais vert</h1> <body> </html> 27 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Les feuille se style La définition des styles se fait dans un ou plusieurs fichiers séparés Permet d’appliquer les styles à un ensemble de documents Inclusion d’une feuille de style dans un document avec la balise <LINK> 28 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style La balise <LINK> Permet de référencer d’autres fichiers externes Entre <HEAD> ... <HEAD> Trois attributs : REL=”stylesheet” indique que le fichier inclus est une feuille de style TYPE=”text/css” : norme se styles utilisée dans le fichier HREF=”mystyles.css” indique l’URL de la feuille de style 29 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Utilisation de feuilles de style /* styles CSS pour la balise P */ /* pstyle.css */ P{font-size : 16pt ; color : yellow ;} P.special{font-style : italic ; font-size : 30pt ; color : red} P#bleu{color : blue ;} /* styles CSS générique */ /* allstyle.css */ .standard{color : green ;font-size : 10pt} #vert{color : green} .noirsurblanc{background-color : white ; color : black} .blancsurnoir{background-color : black ; color : white} #rouge{color : red ;} 30 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Utilisation de feuille de style <html><head> <link rel=”stylesheet” type=”text/css” href=”allstyle.css”> <link rel=”stylesheet” type=”text/css” href=”pstyle.css”> </head><body> <p class=”special” id=”vert”> P spécial vert </p> <p style=”color : red ; background-color :blue ;”> mais ici on utlise un style local (surcharge du style général de P) </p> </body> </html> 31 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Remarques Groupement de balises H1, H2, H3 {color :red ; } tous les titres H1, H2, H3 seront en rouge Sélection contextuelle d’application de style H3 A {color : blue } : les liens définies dans <H3> ...<H3> seront en bleu Héritage des styles : <P class=”titre1”> <H1> imbrication </H1> </P> les balises imbriquées dans des balises de niveau supérieur héritent du style défini dans ces balises Séries de balises TD+TD {background-color : yellow ;} =⇒ A partir de la deuxième cellule de chaque ligne, le fond est jaune. 32 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Compléments sur les styles line-height : 1pt hauteur de la ligne color : rgb(255,255,255) couleur de la police background-image : url image d’arrière-plan background-color : transparent/ rgb(0,0,0) couleur d’arr. plan border : 1px épaisseur de la bordure boder-style : solide / double / groove / dotted / dashed border-color : red couleur de la bordure font-family : seif / fantasy / ... famille de police font-style : italic / oblique / normal .. style de police font-size : small / medium ... : taille de police font-weight : bold/bolder ... : graisse de la police text-transform : capitalize / uppercase / lowercase /non càd : début des mots en majuscules, tout en majuscules, tout en minuscules, et pas de transformation du texte. 33 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Compléments sur les style Définition d’un curseur pour un élément HTML : le curseur prend la forme mentionnée quand la souris passe la dessus : cursor : form où form peut être : wait : curseur en forme de sablier progress : curseur en forme de flèche avec sablier crosshair : curseur en forme de croix fine ... 34 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Compléments sur les styles Propriétés des liste list-style-type : pour les listes non numérotées : square/circle/disc pour les listes numérotées : decimal 1,2,3,... decimal-leading-zero 01,02,... lower-roman i, ii, iii,... upper-roman I, II, III,... lower-alpha a,b,c,... upper-alpha A,B,C,... list-style-image : <images/puce.gif> ; pour utiliser une image comme puce 35 / 36 Les cadres ou (frames) Les images sensibles Feuilles de style Compléments sur les styles Appliquer des styles à certains états : a :link{color : red ;} a :visited{color :blue ;} a :active {color : green} a :hover{color : yellow} (souris passe sur le lien) p :first-line { color : red} p :first-letter{ font-size : 150%} 36 / 36