En préambule, dans la feuille de style externe, nous ajouterons à la class .Boites, la propriété padding:20px.
Correctif par rapport à la bêtise que j'ai dite la semaine dernière, on peux bien sûr attribuer des valeurs négatives aux margin
mais pas aux padding.
Josette avait donc raison, justice lui soit rendue!
APPLICATION : padding et margin
Créons une <div> class="Boites".
Dans cette <div> plaçons un élément <p> class="Bloc. Dans la feuille de style, avec deux slash, nous neutraliserons la
propriété width de .Bloc.
Maintenant attribuons en ligne à <p> class="Bloc la propriété margin:-20px, ce qui annule les padding de <div> class="Boites".
Cette technique de centrage est adapté aux éléments positionnés dans le flux courant. Elle permet de centrer tout bloc dans son conteneur
en attribuant à ses marges gauche et droite la valeur "auto".
Pour que cela fonctionne il est indispensable de préciser la largeur du bloc à centrer.
APPLICATION : Dans le code html, sous les <div> précédentes, ouvrez une <div> class .Boites dans laquelle
nous placerons 1 élément <p > class : Bloc.
Dans la feuille de style, attribuons à .Bloc. une largeur width de 1000px.
Par l'attribut style en ligne, on donnera à cet élément des marges verticales de 20px et des marges horizontales "auto", ceci pourrait s'écrire
- margin-top:20px;
- margin-right:auto;
- margin-bottom:20px;
- margin-left:auto;
soit dans sa forme condensée : margin:20px auto;
L'élément <img /> est un élément inline dit remplacé, ce qui signifie que :
- Par défaut, il a un comportement en ligne et suit le texte dans lequel il est inséré.
- Mais on peut lui attribuer des dimensions (width, height), des marges (margin et padding) et des bordures.
Le lien vers l'image d'origine se fait par l'attribut src="......" dont la valeur est l'url de cette image.
Par défaut l'élément <img /> adopte les dimensions de l'image d'origine, mais on peut ajuster ces dimensions à la page en jouant sur width ou height,
une seule de ces propriétés suffit, l'image conservant ces proportions d'origine. On peut aussi déformer l'image en attribuant à width et à height des proportions différentes
de celles de l'image d'origine.
Attention toutefois, une grande image très réduite conserve son poids en pixels, une petite image très agrandie perd de la définition.
APPLICATION : Dans le code html, créons une <div> class="Boites" dans laquelle nous placerons un titre <h2> "La balise <img />",
puis un élément <p> auquel nous attribuerons en ligne la propriété : border:2px solid #f00.
Dans cet élément <p> nous copierons le texte du fichier CanyonsSousMarins.txt, dans lequel nous insèrerons au petit bonheur, trois images et leurs propriétés en ligne :
- src="Images/VChapon.jpg" style=""width:90px;"
- src="Images/VEspets.jpg" style=""height:120px; margin:0 30px;"
- src="Images/VMurene.jpg" style=" width:160px; margin:30px;padding:20px;border:5px solid #0f0"
L'icône est appelée par la meta-balise <link/> placée dans la partie <head>. Dans ce cas, les attributs de <link/> (qui rappelons-le peut également être uilisée pour établir d'autres types de liens) sont :
- rel="shortcut icon". L'attribut rel détermine une relation logique avec une cible de lien située après.
- type="...". La valeur de l'attribut type est généralement image/x-icon, mais on peut également utiliser les valeurs image/jpg, image/png ou image/gif.
- href="....". La valeur de l'attributs href est l'url de l'icône.
APPLICATION : Placer dans la partie <head> de la page la meta-balise <link/> avec ses attributs décrits plus haut. Nous ferons un essai :
- avec type="image/x-icon" et l'icône Images/NP++.ico
- puis avec type="image/jpg" et l'image Images/Espet2.jpg
L'arrière-plan, background dans la langue de Bill Gates, peut se voir attribuer quatre propriétés :
- background-color: #RRVVBB en notation hexadécimale (mais on peut bien sûr utiliser les autres notations)
- background-image:url(...adresse de l'image....)
- background-repeat, valeurs possibles :
- repeat (valeur par défaut)
- no-repeat
- repeat-x
- repeat-y
- background-position:xpx ypx (outre px, on peut utiliser les autres unités. Si la valeur est 0, la mention de l'unité n'est pas obligatoire)
L'ensemble de ces propriétés peut s'écrire de façon condensée : background : url(.......) no-repeat xpx ypx #RRVVBB
Ces propriétés peuvent être affichées dans n'importe quel ordre, il faut par contre impérativement les séparer par un espace.
APPLICATION : Dans la feuille de style interne créons une class .ArrierePlan avec les propriétés suivantes :
- .ArrierePlan{
- padding : 20px;
- width : 968px;
- height : 708px;
- border : 2px solid #f00;
- background : #aaa;
- margin : 40px auto;
- font-size : 40px;
- }
Dans le code html, créons une <div> class="Boites" dans laquelle nous placerons un titre <h2> "Les images d'arrière-plan", puis six éléments <p class="ArrierePlan">, auxquel, en ligne, nous attribuerons successivement les propriétés :
- background : url(Images/Espets.jpg)
- background : url(Images/Espets.jpg) 200px 200px no-repeat
- background : url(Images/Espets.jpg) -300px -300px repeat-y
- background : url(Images/VEspets.jpg) no-repeat
- background : url(Images/VEspets.jpg) repeat-x
- background : url(Images/VEspets.jpg) 256px 0 repeat-y #6ecaff