Module1 CSS Part2
Module1 CSS Part2
CSS 5
▪ Personnalisation des liens
▪ Identification et le regroupement d'éléments
▪ Modèle des boîtes
▪ Balises structurantes de HTML5
2021/2022 - Faculté des Sciences - Tétouan - Maroc
Personnalisation des liens
CSS permet de définir les propriétés du lien différemment, selon que le lien est visité, non
visité, activé, ou si le curseur le survole. Cela permet d'ajouter des effets plaisants et utiles
aux sites Web. Pour contrôler ces effets, on utilise ce qu'on appelle des pseudo-classes.
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Personnalisation des liens
On Utilise a:link et a:visited pour les liens non visités et pour ceux visités. Les liens actifs
ont pour pseudo-classe a:active, et la pseudo-classe a:hover intervient lorsque le curseur
survole le lien.
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Personnalisation des liens
La pseudo-classe :link
utilisée pour les liens menant aux pages que l'utilisateur n'a pas visitées.
Exp:
a:link { color: #6699CC; }
La pseudo-classe :visited
Utilisée pour les liens menant aux pages que l'utilisateur a visitées.
Exp:
a:visited { color: #660099; }
La pseudo-classe :active
La pseudo-classe :active est utilisée pour les liens qui sont activés.
Exp:
a:active { background-color: #FFFF00; }
La pseudo-classe :hover
Utilisée lorsque le pointeur de la souris survole un lien.
Exp:
a:hover { color: orange; font-style: italic; }
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Personnalisation des liens
a { text-decoration:none; }
On peut fixer la valeur de text-decoration en même temps que celles d'autres propriétés pour les
quatre pseudo-classes.
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Identification et le regroupement d'éléments (class et id)
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Identification d'un élément avec id
on utilise l'attribut id pour identifier un élément unique parmi plusieurs éléments
On ne peut pas avoir deux éléments avec le même id dans le document.
Exp : <h1>Chapitre 1</h1>
<h2>Chapitre 1.1</h2>
<h2>Chapitre 1.2</h2>
<h1>Chapitre 2</h1>
<h2>Chapitre 2.1</h2>
<h3>Chapitre 2.1.2</h3>
Il pourrait s'agir des titres d'un document partagé en chapitres ou en paragraphes. On assigne un id à chaque
chapitre comme ceci :
<h1 id="c1">Chapitre 1</h1>
<h2 id="c1-1">Chapitre 1.1</h2>
<h2 id="c1-2">Chapitre 1.2</h2>
<h1 id="c2">Chapitre 2</h1>
<h2 id="c2-1">Chapitre 2.1</h2>
<h3 id="c2-1-2">Chapitre 2.1.2</h3>
Le titre du chapitre 1.2 apparaît en rouge: #c1-2 { color: red; }
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Regroupement d'éléments (span et div)
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Regroupement d'éléments <span>
Pour accentuer en rouge des parties de cette citation . Dans ce but, on utilise la
balise <span>. Chaque span reçoit un attribut class défini dans la feuille de style :
On peut utiliser l'attribut id pour ajouter du style aux éléments <span>, tant que
vous appliquez un id unique à chacun des trois éléments <span>.
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Regroupement d'éléments <div>
<span> s'utilise dans un élément de type bloc, <div> sert à regrouper un ou plusieurs
éléments de type bloc.
Le regroupement avec <div> fonctionne plus ou moins de la même façon.
Exp: Deux listes de présidents des États-Unis répartis selon leur affiliation politique :
<div id="democrats">
<ul> <li>Jimmy Carter</li>
<li>Bill Clinton</li>
<li>Barack Obama</li>
<li>Joe Biden</li> #democrats { background:blue; }
</ul> #republicans { background:red; }
</div>
<div id="republicans"> Fichier CSS
<ul> <li>Ronald Reagan</li>
<li>George Bush</li>
<li>George W. Bush</li>
<li>Donald Trump</li>
</ul>
</div>
Fichier HTML
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Modèle des boîtes
Le modèle des boîtes de CSS décrit les boîtes générées pour les éléments HTML. Il contient également des
options détaillées pour l'ajustement des marges, des bordures, des espacements et du contenu de chaque
élément.
Le modèle des boîtes dans CSS
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Margin et padding
Fixer la marge d'un élément
Un élément a quatre côtés : droit ("right"), gauche ("left"), supérieur ("top") et
inférieur ("bottom"). La marge est la distance entre chaque côté et l'élément
avoisinant (ou les bordures du document).
Exp: les marges de l'élément <body>.
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Fixer l'espacement dans un élément
L'espacement peut aussi être assimilé à un « remplissage ». Cela peut se comprendre dans la
mesure où l'espacement n'affecte pas la distance de l'élément aux autres éléments mais
définit seulement la distance interne entre la bordure et le contenu de l'élément.
Exp:
h1 { background: yellow; }
h2 { background: orange; }
En définissant l'espacement des titres, on change le remplissage autour du texte dans
chaque titre :
h1 { background: yellow;
padding: 20px 20px 20px 80px; }
h2 { background: orange;
padding-left:120px; }
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Types de bordures [border-style]
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Couleur des bordures [border-color]
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Couleur des bordures [border-width]
Définie par la propriété border-width, dont les valeurs peuvent être thin, medium et thick, ou une
valeur numérique en pixels.
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Bordures [border]
Exp:
On définie les bordures différentes pour <h1>, <h2>, <ul> et <p>. Le résultant montre les
possibilités :
h1 { border-width: thick;
border-style: dotted;
border-color: gold; }
h2 { border-width: 20px;
border-style: outset;
border-color: red; }
p{ border-width: 1px;
border-style: dashed;
border-color: blue; }
ul { border-width: thin;
border-style: solid;
border-color: orange; }
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Bordures [border]
Exp: Déclaration des propriétés spéciales pour les bordures supérieures, inférieures,
gauches ou droites :
h1 { border-top-width: thick;
border-top-style: solid;
border-top-color: red;
border-bottom-width: thick;
border-bottom-style: solid;
border-bottom-color: blue;
border-right-width: thick;
border-right-style: solid;
border-right-color: green;
border-left-width: thick;
border-left-style: solid;
border-left-color: orange; }
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Bordures [border]
Concision [border]
On peut concentrer plusieurs propriétés en une seule avec
border :
p{ border-width: 1px;
border-style: solid;
border-color: blue; }
Il peut se concentrer en :
p { border: 1px solid blue; }
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Hauteur et largeur des éléments
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Eléments flottants
Un élément peut avoir une position flottante à droite ou à gauche avec la propriété float.
Exp:
<div id="picture">
<img src="image.jpg" alt="image">
</div>
<p>biographie ...</p>
Pour que l'image flotte à gauche et que le texte l'entoure, il suffit de définir la largeur de
la boîte entourant l'image puis de donner à la propriété float la valeur "left" :
#picture { float:left;
width: 100px; }
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Eléments flottants
Les flottants peuvent servir pour créer les colonnes d'un document.
Exp: <div id="column1">
<p>bla bla bla...</p>
</div>
<div id="column2">
<p>bla bla bla...</p>
</div>
<div id="column3">
<p>bla bla bla...</p>
</div>
Une fois fixée la largeur des colonnes (par exemple à 33%), on fait flotter chaque colonne à
gauche en définissant la propriété float :
#column1 { float:left; width: 33%; } La propriété float admet les
#column2 { float:left; width: 33%; } valeurs "left", "right" ou
#column3 { float:left; width: 33%; } "none".
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Eléments flottants
La propriété clear
Sert à contrôler le comportement des éléments qui viennent après les éléments flottants dans le document.
Par défaut, les éléments à suivre remontent pour combler l'espace disponible libéré lorsqu'une boîte flotte
d'un côté.
La propriété clear admet les valeurs "left", "right", "both" ou "none". Le principe est tel que, par exemple,
si la valeur de clear d'une boîte est fixée à "both", la bordure supérieure de la marge de cette boîte se
trouvera toujours sous la bordure de la marge inférieure des boîtes flottantes éventuelles venant du dessus.
<div id="picture">
<img src="image.jpg" alt="image">
</div>
<h1>Said Youssef</h1>
<p class="floatstop">biographie ...</p>
Pour empêcher que le texte ne flotte à côté de l'image, nous pouvons ajouter le code CSS suivant :
#picture { float:left; width: 100px; }
.floatstop { clear:both; }
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Balises structurantes de HTML5
Dans HTML5, des nouvelles balises sont introduites pour structurer les pages.
<header> : l'en-tête
La plupart des sites web possèdent un en-tête (header). On y trouve le plus souvent un logo,
une bannière, …
<header>
<!-- Placez ici le contenu de l'en-tête de votre page -->
</header>
<footer> : le pied de page
le pied de page (footer) se trouve en général tout en bas du document. On y trouve des
informations comme des liens de contact, le nom de l'auteur, les mentions légales, etc.
<footer>
<!-- Placez ici le contenu du pied de page -->
</footer>
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Principaux liens de navigation <nav>
La balise <nav> doit regrouper tous les principaux liens de navigation du site. Vous y
placerez par exemple le menu principal de votre site.
Généralement, le menu est réalisé sous forme de liste à puces à l'intérieur de la balise
<nav>
<ul>
<li><a href="index.html">Accueil</a></li>
<li><a href="forum.html">Forum</a></li>
<li><a href="contact.html">Contact</a></li>
</ul>
</nav>
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Article indépendant <article>
<article>
<h1>Mon article</h1>
<p>Bla bla bla bla</p>
</article>
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Exemple d'organisation de la page
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Exemple d’utilisation des balises structurantes
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz
Exemple d’utilisation des balises structurantes
nav
{
float: left; width: 150px;
border: 1px solid black;
}
section
{
margin-left: 170px; border: 1px solid blue;
}
footer
{
text-align: center;
border: 1px solid blue;
}
Module 1 : Initiation web: HTML – CSS – PHP / par Prof. Youssef Zaz