Les Feuilles de Styles Ou CSS
Les Feuilles de Styles Ou CSS
Les Feuilles de Styles Ou CSS
Notions fondamentales
Table des matières
• 1. introduction
• 2. Syntaxe de base du CSS
• 3. Emplacement
• 4. Sélecteurs et propriétés
4.1. Sélecteurs CSS simples
4.2. Les propriétés CSS
• 5. Héritage en CSS
• 6. Les polices d'écriture en CSS
o 6.1. Les propriétés de types font
o 6.2. Les propriétés de types Text
o 6.3. Les couleurs et l'opacité
• 7. Les éléments HTML / CSS et les blocs
o 7.1. ID et Class
o 7.2. Block et inline
o 7.3. DIV et Span
o 7.4. Les boites en CSS
o 7.5. Les bordures
• 8. Gestion des espaces
o 8.1. Largeur et hauteur
o 8.2. Les marges
• 9. Les ombrages en CSS
2
1. Introduction
Les feuilles de styles, également appelées CSS (Cascading Style Sheets), sont au web ce que les styles sont
au traitement de texte. Associé à des balises html ou crées par des utilisateurs, les styles définissent la façon
dont le navigateur présentera la page. Les styles permettent d’appliquer une charte graphique homogène tant
au niveau des polices, des fonds, des bordures que des couleurs utilisées. Créer une feuille de style, c’est
assurer une mise en pages cohérente et plus simple à mettre à jour. Ainsi, pour modifier l’apparence des titres
d’un site de plusieurs pages, il est inutile d’ouvrir obligatoirement chaque page html pour appliquer la
transformation.
Les astuces proposées dans ce cours vont permettre à mieux comprendre les avantages dans l’élaboration des
mises en pages, Elle s’accompagne à vous aider de mieux agencer les éléments composants votre page.
Exemple :
3
• Un bloc de déclarations : il indique les propriétés à attribuer à ces balises.
balise1 {
propriete1: valeur1;
propriete2: valeur2;
propriete3: valeur3;
balise2 {
propriete1: valeur1;
propriete2: valeur2;
propriete3: valeur3;
propriete4: valeur4;
balise3 {
propriete1: valeur1;
Exemple
color: green;
font-size : 10px;
3. Emplacement
Vous avez trois possibilités :
4
- Directement dans les balises du fichier HTML via un attribut style
Il s'agit d'écrire le code à l'intérieur de la page html au sein d'un élément STYLE. Le code ne pourra
s'appliquer qu'à la page dans laquelle il est créé. Cette méthode n'est pas recommandée pour des raisons de
maintenance d'un site web.
Exemple :
<!DOCTYPE >
<html>
<head>
<title>première exemple</title>
</head>
</body>
</html>
2. Ecrire le code CSS dans l’en-tête de la page html (feuille de style interne):
<head>
<title>première exemple</title>
<Style type="text/css">
color: green;
5
font-size : 10px;
</Style>
</head>
<body>
<p>bonjour UVS</p>
</body>
</html>
Cette méthode est pratique parce qu’elle permet de séparer le code HTML de celui CSS : le fichier est plus
facile à lire. C’est aussi la méthode qui est recommandée : si vous devez concevoir un site qui dispose de
plusieurs dizaines de fichiers, la feuille de style CSS peut être utilisé par tous les fichiers du site web ; sinon
(sans séparation HTML et CSS) le code CSS devra être copié dans les fichiers HTML qui utilise le code CSS.
Ainsi vous allez avoir deux fichiers : le fichier HTML et le fichier CSS.
NB : Si vous travaillez avec un fichier CSS externe, vous n'aurez besoin d'écrire cette instruction qu'une seule
fois pour tout votre site, comme le montre la figure suivante.
6
Fichier HTML
<!DOCTYPE >
<html>
<head>
<title>première exemple</title>
</head>
<p>bonjour UVS</p>
</body>
</html>
Remarque : Noter la nouvelle balise <link …/> dans l’entête du fichier HTML, elle indique le fichier est
associé à un fichier nommé style.css.
Fichier CSS
color : blue ;
font-size:10px;
Remarque: Les fichiers HTML et CSS doivent se trouver dans le même dossier.
7
4. Sélecteurs et propriétés
Sélecteur & propriétés
Un sélecteur simple permet de cibler les éléments qui correspondent au nom indiqué.
Exemple :
P{
color: green;
Dans cet exemple, le sélecteur P cible tous les paragraphes de notre page html.
Exemple :
P{
color : green;
font-size : 10px;
Dans cet exemple nous avons un sélecteur P avec deux propriétés (color et font-size).
8
Ici le sélecteur P cible tous les paragraphes de notre page html en mettant la couleur du texte en vert et la talle
en 10.
5. Héritage en CSS
La notion d'héritage est très pratique en CSS. Elle signifie que tout élément html enfant va hériter "en
cascade" des styles de ses parents. C’est de là que vient le nom du CSS: cascading stylesheets ou feuille de
style en cascade.
Exemple : tous les éléments à l'intérieur de body sont des enfants de cet élément. Si on applique un style à
l'élément body, ses enfants en hériteront automatiquement.
Exemple :
On va définir une même couleur sur toute la police pour toute notre page HTML en appliquant notre propriété
directement à l'élément body.
<!DOCTYPE >
<html>
<head>
<title>première exemple</title>
</head>
9
<body >
<p>bonjour UVS</p>
</body>
</html>
style CSS
body {
font-family: Verdana;
Remarque : il faut noter que tous les navigateurs selon la version possédée par le visiteur ne supportent pas
la même police. Pour cette raison on indique plusieurs noms de police à utiliser en valeur de la propriété
font-family, en commençant par celle souhaitée, et en séparant chaque valeur par une virgule.
Exemple :
body {
Lors de l’affichage sur cet exemple, le navigateur va d’abord tenter d’afficher la première police. Si celui-ci ne
la supporte pas, il va prendre la seconde et etc.
Les propriétés CSS de type font- vont nous permettre de modifier l’apparence de notre police d’écriture, et
donc de nos textes. Par exemple on peut transformer la taille, le poids, et le style de notre police.
10
- des valeurs de type absolu: souvent exprimées en pixel(px) ou en point(pt).
Exemple de font-size:
h1{
font-size: 30px;
}
/*Notre paragraphe p aura une taille de 120%*/
p{
font-size: 150%;
}
h2 {
font-size: 1.2em;
• La propriété font-style elle permet de forcer sur le style de la police. Elle accepte quatre valeurs
différentes :
P{ font-
style: italic;
exemple:
p{
font-weight: bold;
}
/*Le texte de notre paragraphe p2 est normal*/
11
.p2{
font-weight: 300;
text-align:
valeurs possibles: left, right, justify, center.
exemple:
p { text-align: center;
}
text-transform:
valeurs possibles:
- Lowercase : Met tout le texte en minuscules ;
- None : Pas de transformation du texte. Utile pour annuler une transformation par défaut donnée
par héritage.
Exemple :
p{
text-transform: uppercase;
12
• Line-through : Le texte sera barré ;
• Inherit : Hérite de la valeur de l’élément parent ;
• Initial : Utilise la valeur par défaut de la propriété ;
• None : Pas de décoration.
Exemple:
p{
text-decoration: underline;
• un nom de couleur:
Exemple : H1{
color: white;
La façon la plus simple de changer la couleur du texte est de donner son nom en plus sa valeur.
7.1. ID et Class
Soit le code CSS suivant :
p{
color: blue;
font-size: 10px;
Tous les paragraphes qui utiliseront que le code précédent seront colorés en bleu et le texte aura la taille 10px.
Pour que certains paragraphes soient écrits de manière différente, on utilise les attributs class ou id.
L’attribut class aura pour valeur le nom qui sert à identifier la balise. Il peut être utilisé sur n’importe quelle
balise.
13
<p class=" "> </p>
Exemple:
Fichier HTML
<!DOCTYPE >
<html>
<head>
<title>première exemple</title>
</head>
<p> Bienvenue sur la page dédiée aux informations sur les cours </p>
</body>
</html>
Fichier CSS
.salutations
color: red;
14
Dans cet exemple, tous les paragraphes de la page HTML qui ont comme nom salutations seront affichés en
rouge.
L’attribut id fonctionne de la même manière que class mais il ne peut être utilisé qu’une seule fois dans le
code. On mettra des id que sur des éléments qui sont uniques dans la page, le logo par exemple.
Dans le CSS, ce n'est pas un point que vous mettez avant le nom de l'id, mais un dièse (#) :
Syntaxe :
# nom-de-l'id
{
/* Mettez les propriétés CSS ici comme pour class*/
}
Un élément de type block occupe toute la largeur disponible dans la page. La balise <p> est un exemple
typique d’élément block. Un élément de type block va toujours commencer sur une nouvelle ligne. Voici
quelques éléments HTML de type block : h1,h2, ol, ul, form, div, …
Exemple
15
Dans cet exemple, une bordure a été créée pour les paragraphes. On remarque bien que la bordure prend
toute la largeur de la page.
Un élément de type inline n’occupe que la largeur indispensable à l’affichage du contenu ciblé. Il n’entraine
pas automatiquement un retour à la ligne.
Exemple
La balise <strong> est un exemple typique d’élément inline. Un élément de type inline va toujours commencer
sur une nouvelle ligne. Voici quelques éléments HTML de type block: em, a, img, span, …
NB : Si les éléments de type block sont généralement ceux que l’on utilise pour la mise en page, les éléments
inline sont surtout utilisés pour attribuer un style à une partie du texte.
16
On veut mettre en bleu uniquement l’acronyme UVS. La balise class ne permet pas de le faire car c’est un
attribut et il agit sur toute la balise. Dans ce cas, nous allons utiliser des balises comme <span> ou <div>.
La balise <span> est une balise de type inline, elle se place au sein d’un paragraphe de texte pour sélectionner
certains mots. La balise <div>, quant à elle, est de type block et peut être utilisée pour entourer un bloc de
texte.
Exemple
Code HTML
Code CSS
.universite
color :blue ;
- définir les marges intérieures et extérieures et les bordures autour du contenu de l’élément ; -
positionner les éléments les uns par rapport aux autres de manière efficace.
Voici un tableau qui résume l’ensemble des attributs relatifs aux marges et bordures.
17
Source : http://tecfa.unige.ch/
Exemple : pour avoir une bordure rouge, en trait simple et épaisseur égale 3pixels, voici le code :
h1
18
Vous avez la possibilité de mettre une bordure différente sur chaque côté : border-top, border-bottom,
borderleft, border-right.
Exemple :
p{
Exemple :
p{
border-radius : 10px ;
Voici le résultat :
Le type de bordure : là, vous avez le choix. Votre bordure peut être un simple trait, ou des pointillés, ou
encore des tirets, etc. Voici les différentes valeurs disponibles :
19
• double : bordure double ;
• groove : en relief ;
• ridge : autre effet relief ;
• inset : effet 3D global enfoncé ;
• outset : effet 3D global surélevé.
Ainsi, pour avoir une bordure bleue, en tirets, épaisse de 3 pixels autour de mes titres
h1
{
border: 3px blue dashed;
}
La figure suivante vous présente les différents styles de bordures que vous pouvez utiliser.
• La propriété line-height vous permet de choisir la distance ou l’écartement entre deux lignes de texte.
exemple:
line-height : 20px;
20
• Les propriétés CSS letter-spacing et word-spacing vont nous permettre respectivement de définir
l’espace entre les lettres et entre les mots dans un texte.
Exemple :
source: http://pierre-giraud.com
code css:
div {
21
➢ La propriété height permet de fixer la hauteur
div {
Il faut noter que les propriétés witdh et height prennent les même valeurs absolue et relative (utile dans le cas
d'un site responsive) ou la valeur auto (la hauteur sera calculée automatiquement).
Pour régler efficacement la hauteur et la largeur d’un élément, il faut avant tout bien avoir compris le modèle
des boîtes. Il faut définir la largeur et la hauteur ensuite viendront s'ajouter les marges et les bordures.
Exemple :
<!DOCTYPE html>
<html>
<head>
<title>Le modèle des boîtes</title>
<meta charset= "utf-8">
</head>
<body>
<div>
<h1>université Iba Der Thiam de Thies</h1>
<p class="para1">filière MIO.</p>
<p class="para2">cours Développement web</p>
</div>
</body>
</html>
code css:
div{
background-color: #088;
width: 500px;
h1{
22
width:300px;
background-color: white;
height: 100px;
border: 1px solid black;
}
.para1{
width:300px;
background-color: orange;
padding: 60px;
border: 5px solid #FFF;
}
1. Marges intérieures :
Les marges intérieures se trouvent entre le contenu de l’élément et sa bordure. Ainsi, définir une marge
intérieure importante va éloigner la bordure de l’élément de son contenu. Si on définit une couleur de fond pour
notre élément, celle-ci s’applique également dans l'espace correspondant aux marges intérieures.
Pour définir une marge intérieure, il faut utiliser la propriété padding- avec ses différentes positions :
<!DOCTYPE html>
<html>
23
<head>
<title>modèle des boîtes</title>
<meta charset= "utf-8">
<link rel = "stylesheet" href="style.css" />
</head>
<body>
<div>
<h1>les marges</h1>
<p>bonjour UVS</p>
<p class="p1">je suis étudiant de la filière MIC</p>
</div>
</body>
</html>
code css
div{
background-color: #269;
width: 400px;
border: 5px ridge #444;
border-radius: 15px;
margin-top: 50px;
margin-left: 50px;
}
p{
width: 300px;
border: 3px solid yellow;
}
.p1{
width: 300px;
border: 10px solid red;
padding: 25px;
}
24
Application 1 : Modifier le code précèdent pour reproduire le schéma suivant
2. Marges externes :
Les marges externes d’un bloc sont situées au-delà de ses bordures. Elles servent à espacer les blocs entre
eux. Elles sont définies sur chacun des côtés à l’aide des propriétés margin-top en haut, margin-right à
droite, margin-bottom en bas et margin-left à gauche, ou globalement par la propriété raccourcie margin.
Exemple:
<!DOCTYPE html>
<html>
<head>
<title>modèle des boîtes</title>
<meta charset= "utf-8">
<link rel = "stylesheet" href="style.css" />
</head>
<body>
<div>
<h1>les marges</h1>
<p>bonjour UT</p>
<p class="p1">je suis étudiant de la filière MIO</p>
</div>
</body>
</html>
code css
div{
background-color: #269;
width: 400px;
25
border: 5px ridge #444;
border-radius: 15px;
margin-top: 50px;
margin-left: 50px;
}
p{
width: 300px;
border: 3px solid yellow;
}
.p1{
width: 300px;
border: 10px solid red;
padding: 25px;
margin-left: 90px; /* (on laisse une marge de 90 à gauche)* /
}
Pour créer des ombres autour des boites à l'intérieur ou à l'extérieur nous pouvons utiliser la propriété
boxshadow qui prend quatre valeurs différentes dans l'ordre suivant :
4. La couleur de l’ombre.
NB :
26
• les box-shadow, les ombres ajoutées aux éléments de type bloc,
• les text-shadow, les ombres ajoutées au contenu textuel.
Exemple:
<!DOCTYPE html>
<html>
<head>
<title>modèle des boîtes</title>
<meta charset= "utf-8">
</head>
<body>
<div>
<h1>les marges</h1>
<p>bonjour UVS</p>
<p class="p1">je suis étudiant de la filière MIC</p>
</div>
</body> </html>
code css
div{
background-color: #269;
width: 400px; border:
5px ridge #444; border-
radius: 15px; margin-
top: 50px;
margin-left: 50px;
}
p{
width: 300px;
border: 3px solid yellow;
box-shadow: -5px -4px 5px yellow;
}
.p1{
width: 200px;
border: 10px solid red;
padding: 25px;
margin-left: 90px;
box-shadow: -10px 4px 5px lime inset;
}
27
28