Académique Documents
Professionnel Documents
Culture Documents
1
Définition
• CSS : c’est l’abréviation de Cascading Style Sheets
("Feuille de style en cascade").
• C'est dans la feuille de style que l'on va déclarer
toute la mise en forme des pages : la couleur de
fond, les polices de caractère, leurs couleurs, etc.
• HTML pour écrire le contenu de nos pages web.
• CSS pour présenter ce contenu.
• Ces 2 langages sont donc complémentaires.
2
Principe des CSS
3
1. Styles CSS dans les balises
Exemple:
<h2 style="font-family:Verdana; font-size: 18px;">
Ce titre est en Verdana corps 18
</h2>
4
2. Feuille de styles interne
Il est aussi possible de taper du CSS directement à l’intérieur même du fichier
HTML, entre les balises <head> </head>.
Vous devrez y mettre une balise <style> </style>à l’intérieur, comme ceci :
<!doctype html>
<head>
<meta charset="utf-8" />
<title>Exemple de CSS dans le header</title>
<style>
/* Vous taperez votre code CSS ici */
</style>
</head>
<body>
</body>
5
</html>
3. Feuille de styles externe
Pour relier une feuille de styles externe à un fichier
HTML, vous utiliserez la balise <Link> dans l’entête
de ce fichier (ici, la feuille de styles a pour nom
design.css) :
7
Définition d'un style
La définition de base d'un style est simple :
balise { propriété de style: valeur;}
Exemple 1
h1 {
color:red; h1, h2 {
} color:red;
h2 { }
color:red;
}
10
Des commentaires dans du CSS
Pour faire un commentaire, vous tapez /*, suivi de
votre commentaire, puis */ pour terminer votre
commentaire.
p{
color:blue; /* Les paragraphes seront bleus*/
font-size:18px; /* La taille de 18 pixels me semble
pas mal*/
}
11
Utiliser les classes
Les class vous permettent de définir un style personnalisé.
Exemple:
Supposons que vous vouliez définir un style appelé"important" pour
écrire le texte en rouge / 18 pixels.
Vous rajouterez l'attribut class="important"à chacune des balises que
vous voulez modifier.
12
Utiliser les classes
<!doctype html>
<meta charset="utf-8" />
<head>
<title>Page d'exemple pour tester le CSS</title>
<metahttp-equiv="Content-Type" content="text/html"; charset=iso-8859-1" />
<link rel="stylesheet"type="text/css" href="essai.css" />
</head>
<body>
<p class="important"> Bonjour tout le monde </p>
</body>
</html>
Fichier CSS :
.important
{ color:red;
font-size:18px; } 13
L'attribut id
#logo {
/* Mettez les propriétés CSS ici */
}
14
Les balises universelles
Appliquer une class (ou un id) à certains mots qui ne sont pas
entourés par des balises.
Exemple: modifier uniquement “grand père” dans le
paragraphe suivant :
<p>Comme l’a dit grand père un certain 20 juillet 1969...</p>
block
inline
15
Exemple
Code HTML:
Code CSS :
.nom {
color:blue;
}
p
{
font-size:14px; /* Paragraphes de 14 pixels */ }
h1
{
font-size:22px; /* Titres de 22 pixels */ }
En pourcentage :
20
Polices
Voici une liste de polices qui fonctionnent bien sur la plupart
des navigateurs :
Arial
Arial Black
Comic Sans MS
Courier New
Georgia
Impact
Times New Roman
Trebuchet MS
Verdana
21
Exemple
h1 {
font-family:"Arial Black", Arial, Verdana, serif;/* On
essaie d'avoir Arial Black en priorité */
}
p{
font-family:"Comic Sans MS", "Trebuchet MS",
Georgia, serif;
}
22
Alignement simple
On utilise la propriété text-align, et on indique
l’alignement désiré :
left :le texte sera aligné à gauche (c'est le réglage par
défaut).
center: le texte sera centré.
right: le texte sera aligné à droite.
justify: le texte sera "justifié".
Exemple :
.signature
{
text-align:right;/* Pour aligner à droite ma signature */
font-family: "Comic Sans MS", Georgia, "Times New
Roman", serif; font-size: 80%; 23
}
L'indentation: la mise en retrait du texte
p{
text-indent: 30px; /* Les paragraphes commenceront 30
pixels sur la droite */ text-align: justify; /* Ils seront
justifiés */ font-size: large;
}
24
Effets de style
Mettre en italique :
h2 {
font-style: italic;/* Les titres h2 seront en
italique ! */
}
Mettre en gras :
p{
font-weight: bold;
}
25
Les majuscules en CSS
h1
{
text-align:center; font-family:Arial, "Times New Roman",
Verdana, serif; text-transform: capitalize; /* Les premières
lettres des mots du titre seront en majuscules */ 26
La décoration
La propriété text-decoration
underline :souligné.
line-through :barré.
overline :ligne au-dessus.
none :normal (par défaut).
27
La décoration
h1 {
<h1>A ne pas
text-align: center; <p>La!</h1>
manquer propriété CSS <em>text-decoration</em>
font-family:"Arial Black", permet de décorer un peu son texte :<br /> <span
Arial,
"Times New Roman", serif; class="souligne">en le soulignant</span>...<br />
text-decoration: blink; <span class="barre">en le barrant</span>...<br
} /> ...ou encore <span class="ligne_dessus">en
.souligne mettant une ligne au-dessus</span>.</p>
{
text-decoration: underline;
}
.barre
{
text-decoration: line-through;
}
.ligne_dessus {
text-decoration: overline;
} 28
Les couleurs
29
Exemple
h1 {
text-align:center; font-family:Arial, "Arial
Black", "Times New Roman", serif; text-
decoration: underline; color: green;/* Le
titre en vert */
}
p{
text-indent: 20px; color: blue;/* Les
paragraphes en bleu */
}
strong /* ... et les mots importants en
rouge clignotant ! */ {
color: red; text-decoration: blink;
}
30
La notation hexadécimale
• Un nom de couleur en hexadécimal, c’est une combinaison
de lettres et de chiffres qui indiquent une couleur.
31
La notation hexadécimale
32
La méthode RGB (Red-Green-Blue)
34
1. La couleur de fond
• Pour indiquer une couleur de fond, on utilise la propriété CSS
background-color.Vous pouvez taper le nom d'une couleur,
l'écrire en notation hexadécimale ou encore utiliser la méthode
RGB.
• Pour indiquer la couleur de fond de la page web, il faut travailler
sur la balise <body> qui correspond à toute la page web.
body {
background-color : black;
color:white;
}
Exemple:
37
2. Les dégradés
La propriété radial-gradiant
un dégradé radial commence à partir d'un point central et rayonne
la couleur vers les bords d'un conteneur
Exemple:
background: gradient(radial, 50% 0%, 20, 50% 100%, 40, from(red), to(yellow));
38
3. L'image de fond
• La propriété permettant d'indiquer une image de fond
est background-image
• Comme valeur, on doit lui mettre
url("nom_image.extension")
• L'adresse indiquant où se trouve l'image de fond peut
être en absolu (http://...) ou en relatif (fond.png).
• Si on veut appliquer une image de fond à toute la page,
on doit utiliser la balise <body>
body {
background-image:url("../images/neige.png");
}
39
3. L'image de fond - Répétition
• background-repeat
l’image de fond doit-elle être répétée ?
• repeat
• no-repeat
• repeat-x
• repeat-y
no-repeat
repeat-x
repeat-y
repeat
3. L'image de fond - Positionnement
background-attachment: background-attachment:
fixed; scroll;
(valeur par défaut)
Effets sur les liens
a{
text-decoration: none;/* Les liens ne seront plus
soulignés */ color:red;/* Les liens seront en rouge au
lieu de bleu */
font-style:italic;/* Les liens seront en italique */
}
42
Les pseudo-formats
Au passage de la souris :
a:hover {
}
"a:hover" signifie : "Quand la souris est sur le lien" (quand
on pointe dessus).
a{
text-decoration: none; /* Les liens ne seront plus soulignés
*/
color: red;/* Les liens seront en rouge au lieu de bleu */
font-style:italic;/* Les liens seront en italique */
}
a:hover /* Quand le visiteur pointe sur le lien */ {
text-decoration: underline; /* Le lien deviendra souligné
quand on pointera dessus */ color: green;/* Le lien sera
écrit en vert quand on pointera dessus */ 43
}
Les pseudo-formats
44
Au moment du clic
45
Première lettre et première ligne
La première lettre
p:first-letter /* La première lettre de chaque
paragraphe */ {
font-weight:bold;/* En gras */ font-size:1.2em;/* Ecrit
légèrement plus gros que la normale */ color:blue;/*
En bleu */
}
p{
text-indent:20px;
46
}
Première lettre et première ligne
La première ligne
47
Retrait des listes
La propriété list-style-position permet d'indiquer si on
veut que la liste soit mise en retrait ou non.
list-style-position peut prendre 2 valeurs :
inside : la liste n'est pas mise en retrait.
outside : la liste est mise en retrait (par défaut).
48
Exemple
.pas_de_retrait {
list-style-position:inside;
}
.retrait {
list-style-position:
outside;
}
49
Représentation de la puce
50
Représentation de la puce
51
Changer l’image de la puce
52
Dimensionnement et positionnement
54
1. Les marges
propriété
margin Bordure ……
Bordure ……
1. Les marges
Régler la taille de la marge
• margin-top
• margin-bottom
• margin-left
• margin-right
margin : auto
permet normalement de régler les marges au mieux pour
centrer l’élément.
2. Les bordures
propriété
border
border-style
None, hidden,
dotted, dashed, solid, double,
groove, ridge, inset, outset
border-color
gère la couleur de la bordure
border-top-width
border-bottom-width
border-left-width
border-right-width
3. L’espacement
propriété
padding Et cette bordure peut être plus
ou moins rapprochée du
contenu
63
Les modes de positionnement
Positionnement relatif
1) l'élément prend sa place dans le flux courant
2) on le décale avec les propriétés top, right, bottom, left
Remarques : permet des superpositions – attention ! l'élément
reste dépendant des éléments frères.
#premier { #second {
margin-left: 3em; position: relative;
width:100px; left: 20px;
background: orange; bottom: 35px;
} margin-left: 3em;
width: 150px;
div { height: 50px;
width: 300px; background: green;
height: 200px; } 20px
background: yellow;
} 35px
64
Les modes de positionnement
Positionnement absolu
L'élément sort du flux, il se place par rapport au premier
ancêtre positionné (en relatif, absolu ou fixe)
div { #second {
position: relative; position: absolute;
width: 300px; top: 0;
height: 200px; right: 0;
background: yellow; width: 150px;
} height: 50px;
margin:0;
#premier { background: green;
margin:0; }
width:100px;
background: orange;
}
65
Dimensionnement et positionnement
Positionnement fixe
Cas particulier du positionnement absolu : l'élément ne se
déplace pas lors du défilement (pas pris en charge par I.E. 6)
La profondeur
Par défaut, en cas de superposition, le dernier élément positionné
s'affiche par-dessus les autres avec z-index => c'est celui qui a le plus
grand z-index s'affiche par-dessus les autres
#premier{ #second{
position: absolute; position: absolute;
top: 0; top: 40px;
left: 0; left: 50px;
z-index:10; z-index:0;
width: 100px; width: 150px;
background: #ccc; background: green;
} }
66
Les modes de positionnement
Positionnement flottant
L'élément sort du flux normal pour prendre place à droite ou à
gauche du bloc qui le contient. L'élément suivant occupe l'espace libre en
épousant sa forme.
div { #premier {
width:300px; float: right;
height: width: 100px;
200px; background: orange;
} 1
background: 2
yellow;
} #second {
background: green;
}
67
La propriété display
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla bla
bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
propriété visibility : hidden
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
Mise en page
72
Mise en page
Exemple 1 :
<header>...texte de l'en-tête...</header>
<article>
<aside>
<nav> <a href="lien1.php">lien1</a>
<a href="lien2.php">lien2</a>
<a href="lien3.php">lien3</a>
<a href="lien4.php">lien4</a>
<a href="lien5.php">lien5</a>
</nav>
</aside>
....contenu du corps de page...
</article>
<footer>...contenu du pied de page...</footer> 73
Mise en page
body header { article aside {
width:600px; width:200px;
height:50px; height:400px;
background-color:hotpink; background-
} color:lightgreen;
float: left;
body article { }
width:600px;
height:400px; article aside nav a {
background- display: block;
color:aquamarine; }
}
article aside nav a:hover {
body footer { background-color: white;
width:600px; }
height:50px;
background-color:yellow;
} 74
Mise en page
Exemple 2 :
<header id="bandeau"> <h1>Un site web</h1>
<h2>Artiste du Web (!)</h2> </header>
<div id="content">
<div id="centre">
<p>Envie d'un site qui change?…</p>
<figure id="gallery"> <img src="slide5.jpg" />
<figcaption>Un travail de jeunesse</figcaption> </figure>
<section id="agenda">
<header><h3>Agenda</h3></header>
<article>
<header>
<time datetime="2012-02-03T10:30">
3 Février 2012 à 10:30.</time>
</header>
<p>Le jour J, l'heure H. Ou le début
du modal web…</p> 75
</article>
Mise en page
(…)
</section>
</div>
<nav id="menu">
<h3>Menu</h3>
<ul>
<li><a href="#home">Home</a></li>
(…)
</ul>
</nav>
</div>
<footer>
© Le site–
<a href="mailto:site@dom.com">site@dom.com</a>
</footer>
76
Mise en page
#bandeau { #gallery {
width: 1024px; display: inline-block;
margin: 15px auto; width: 370px;
height: 200px; vertical-align: top;
} }
#content { #agenda {
width: 1024px; display: inline-block;
margin: 0 auto; width: 420px;
} vertical-align: top;
#centre { }
width: 900px; #menu {
display: inline-block; margin: 0;
margin: 0; padding: 0;
padding: 0; display: inline-block;
} width: 100px;
#gallery img { vertical-align: top;
width: 300px; text-align: right;
77
} }
Tableaux
table {
border: medium solid #000000; width:
50%; }
td, th { 79
82
La propriété border-radius
<br>
90
Formulaires
body{
font-family: 'Open Sans',sans-serif; font-weight: 400;
font-size: 13px; }
:invalid {
background-color: #F0DDDD;
border-color: #e88;
box-shadow:0 0 5px rgba(255, 0, 0, .8); }
:required {
border-color: #88a;
box-shadow: 0 0 5px rgba(0, 0, 255, .5); }
form {
width:300px;
margin: 20px auto;
border-color: #99a; }
91
Formulaires
input {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
border:1px solid #ccc;
font-size:20px;
width:300px;
min-height:30px;
display:block;
margin-bottom:15px;
margin-top:5px;
outline: none;
box-shadow: 0 0 5px rgba(0, 0, 255, .2); }
92
Formulaires
input[type=submit] {
background:none;
padding:10px;
cursor: pointer;
}
label{
cursor: pointer;
}
93
CSS3 avancées
(Média Query, responsive)
W3Schools.com
Page 94
TRANSFORMATION 2D
Méthodes ; translate(), rotate(), scale(), skewX(), skewY(), matrix()
Page 95
ANIMATIONS
Les animations CSS permettent d’animer la plupart des éléments HTML sans
utiliser JavaScript ou Flash!
Une animation permet à un élément de changer progressivement de style.
Vous pouvez modifier autant de propriétés CSS que vous le souhaitez, autant
de fois que vous le souhaitez.
Pour utiliser l'animation CSS, vous devez d'abord spécifier des images clés
(@keyframes) pour l'animation.
Lorsque vous spécifiez des styles CSS dans la règle @keyframes, l'animation
passera progressivement du style actuel au nouveau style à certains moments.
Pour qu'une animation fonctionne, vous devez la lier à un élément.
Lorsqu'une animation est terminée, elle reprend son style d'origine.
Page 96
MEDIA QUERY
Introduction
Les média queries, apparus avec CSS3,
permettent de cibler différentes
caractéristiques des terminaux et
d'adapter la restitution de la page HTML
en fonction de l’écran.
– C’est ce que l’on nomme le « Responsive
Design ». Les caractéristiques pouvant être :
• Le type de média,
• La taille de l’écran, de la fenêtre,
• L’orientation,
Page 97
MEDIA QUERY
Page 98
MEDIA QUERY
respectivement largeur
@media all and (orientation: portrait) Sur tous types d'écrans orientés
portrait
@media all and (min-width: 1024px) and Sur tous types d'écran, quand la
minimale et hauteur
(max-width: 1280px) largeur de la fenêtre est comprise
entre 1024px et 1280px
maximale.
@media tv Sur les téléviseurs
@media (min-width: 700px), handheld and si l’écran a au minimum une largeur de
(orientation: landscape) 700 pixels ou si un périphérique mobile
et en mode paysage
Page 101
MEDIA QUERY : Exemples
Page 103
MEDIA QUERY : Exemples