THÉORIE ET PRATIQUE DU WEB

publicité
THÉORIE ET PRATIQUE
DU WEB
Mohamed Sellami
http://perso.isep.fr/msellami/
[email protected]
Théorie et pratique du Web
Sources
•  Diapositives (fortement) inspirées par :
•  http://pierre-giraud.com/html-css/cours-complet/
2
Théorie et pratique du Web
LE LANGAGE CSS
Mise en forme de textes
3
Théorie et pratique du Web
4
La propriété CSS font-family
•  Définir la police de notre texte : La propriété CSS font-family
•  Les navigateurs ne supportent pas tous les mêmes polices :
•  Nous indiquerons toujours plusieurs noms de police à utiliser en séparant
chaque valeur par une virgule.
•  Ainsi, le navigateur va lire les polices renseignées dans l’ordre et utiliser la
première qu’il supporte.
•  Si un nom de police contient des espaces, vous devrez le mettre entre guillemets
ou apostrophes.
Théorie et pratique du Web
5
Exemple
•  Exemple :
Fichier HTML
Fichier CSS
Résultat
Théorie et pratique du Web
6
Web safe fonts et familles génériques
•  Les web safe fonts : ensemble de polices lues par tous les
navigateurs.
•  Les familles génériques : regroupent un ensemble de polices ayant
une allure similaire.
è On indique toujours une police appartenant aux web safe fonts
ainsi que la famille générique associée.
Famille générique
Police
Serif
Times New Roman, Georgia
Sans-serif
Arial, Verdana
Monospace
Courier New, Lucida Console
Cursive
Comic sans MS
•  Liste de Web safe fonts : http://www.cssfontstack.com
Théorie et pratique du Web
7
Intégration des Google Fonts
•  Google Fonts : liste de polices d’écriture développées par Google.
•  Utilisation :
1.  Choisir la police sur https://fonts.google.com,
2.  Faire un lien en HTML vers la police Google désirée, et
3.  Utiliser la police comme valeur de la propriété font-family en CSS.
•  Avantages :
•  ne dépendent d’aucun navigateur,
•  une très longue liste de polices.
Théorie et pratique du Web
8
Intégration des Google Fonts -Exemple
https://fonts.google.com/specimen/Open+Sans
Théorie et pratique du Web
LE LANGAGE CSS
LES PROPRIETES CSS DE TYPE FONT
9
Théorie et pratique du Web
10
Les propriétés de type font
•  Les propriétés CSS de type font- permettent de modifier
l’apparence de nos textes.
•  Les propriétés de type font- les plus utilisées :
•  font-size pour modifier la taille de nos textes ;
•  font-style pour modifier le style de nos textes ;
•  font-weight pour modifier le poids de nos textes.
Théorie et pratique du Web
11
La propriété CSS font-size
•  La propriété font-size permet de modifier la taille de la police.
•  Deux types de valeurs acceptés :
•  des tailles absolues ou fixes exprimées en px (pixels) ou en pt (points),
•  La taille est fixée : elle ne bougera jamais.
•  des tailles relatives ou variables exprimées en % (pourcentage) ou en em.
•  La taille va s’adapter relativement aux préférences enregistrées dans le navigateur
ou par rapport à la taille d’un élément parent.
Théorie et pratique du Web
La propriété CSS font-size - Exemple
Fichier HTML
Résultat
Fichier CSS
12
Théorie et pratique du Web
13
La propriété CSS font-style
•  La propriété CSS font-style permet de forcer le style de la police.
•  Quatre valeurs acceptés :
•  normal (par défaut) ;
•  italic (italique) ;
•  oblique (penché) ;
•  inherit (l’élément ciblé hérite du style de son élément parent).
Théorie et pratique du Web
14
La propriété CSS font-style - Exemple
Fichier HTML
Résultat
Fichier CSS
Théorie et pratique du Web
15
La propriété CSS font-weight
•  La propriété CSS font-weight permet de définir le poids d’une
police (son épaisseur).
•  Les valeurs acceptées :
•  normal (valeur par défaut) ;
•  lighter (la police sera plus fine) ;
•  bold (la police sera plus épaisse) ;
•  bolder (la police sera très épaisse) ;
•  une centaine entre 100 (police très fine) et 900 (police très épaisse). 400
correspond à la valeur « normal » et 700 à « bold » ;
•  inherit (l’élément hérite du style de son parent) ;
•  initial (définit la propriété sur sa valeur d’origine).
Théorie et pratique du Web
16
La propriété CSS font-weight - Exemple
Fichier HTML
Résultat
Fichier CSS
Théorie et pratique du Web
LE LANGAGE CSS
COULEUR ET OPACITE D’UN TEXTE
17
Théorie et pratique du Web
18
La couleur en CSS
•  La propriété color permet de changer la couleur d’un texte .
•  color accepte différents types de valeurs :
•  Un nom de couleur (red, blue, etc.) ;
•  Une valeur hexadécimale (#AA8811, etc.) ;
•  Une valeur RGB ou RGBa.
Théorie et pratique du Web
19
Les noms de couleurs
(+) La façon la plus simple : le nom d’une couleur (en anglais) en
valeur de la propriété color.
(-) Limités dans le choix des couleurs.
Théorie et pratique du Web
20
Les valeurs hexadécimales
(+) 16 millions de nuances de couleurs.
•  la propriété CSS color va accepter des valeurs hexadécimales :
•  Commençant par un #
•  Ensuite trois couple de valeurs entre 00 et FF
•  Sélecteur de couleur : http://htmlcolorcodes.com/fr/selecteur-de-couleur/
Théorie et pratique du Web
21
Les valeurs RGB
•  RGB signifie « Red Green Blue » (rouge, vert, bleu)
•  (+) 16 millions de nuances de couleurs.
•  (+) permet de gérer l’opacité des couleurs
•  Pour créer une couleur RGB, nous indiquons trois intensités de
rouge, de vert et de bleu :
•  L’intensité est entre 0 et 255, et non pas entre 00 et FF.
•  Sélecteur de couleur : http://htmlcolorcodes.com/fr/selecteur-de-couleur/
Théorie et pratique du Web
22
L’opacité des textes
•  Deux manières de gérer l’opacité (transparences) des textes:
•  La propriété CSS opacity : une valeur entre 0 (texte totalement
transparent) et 1 (texte totalement opaque).
•  Indiquer une quatrième valeur définissant l’opacité dans nos notations RGB
(RGBa) entre 0 et 1.
Théorie et pratique du Web
LE LANGAGE CSS
Les propriétés CSS de type « text- »
23
Théorie et pratique du Web
24
Les propriétés CSS de type « text- »
•  text-align : définir l’alignement de notre texte
•  Cinq valeurs possibles : left, right, center, justify, et inherit.
•  text-transform : transformer un texte en majuscules ou en
minuscules
•  Cinq valeurs possible : lowercase, uppercase, capitalize,
inherit, none.
•  text-decoration : définir des décorations pour notre texte.
•  Six valeurs possible : underline, overline, line-through,
inherit, initial, et none.
•  Cas d’utilisation : enlever le soulignement automatique d’un lien.
Théorie et pratique du Web
25
Les propriétés CSS de type « text- »
•  text-indent : gérer l’indentation d’un texte
•  Accepte des valeurs absolues (en px par exemple), des valeurs relatives (en %
ou em par exemple), et des valeurs négatives.
•  text-shadow : créer des ombres autour de nos textes
•  Quatre valeurs à indiquer :
1.  La projection horizontale de l’ombre (en px) ;
2.  La projection verticale de l’ombre (en px) ;
3.  Le rayon de propagation de l’ombre (le « radius », en px) ;
4.  La couleur de l’ombre.
Théorie et pratique du Web
LE LANGAGE CSS
Le modèle des boites
26
Théorie et pratique du Web
27
Le modèle des boites en CSS
•  Le modèle des boîtes est un concept essentiel et central pour la
mise en page d’une page web.
« Tout élément HTML (block ou inline) peut être considéré
comme une boîte rectangulaire »
•  Autour de la « boîte » contenant l’élément en soi, on va pouvoir
dessiner d'autres boîtes contenant la marge intérieure (padding),
les bordures et la marge extérieure de l'élément.
Théorie et pratique du Web
28
Le modèle des boites en CSS
•  La boîte centrale représente le contenu de l’élément.
•  La deuxième boîte la marge intérieure de l’élément (padding).
•  La troisième boîte la bordure de l’élément.
•  La dernière boîte la marge extérieure de l’élément.
Théorie et pratique du Web
29
Le modèle des boites en CSS - Exemple
Théorie et pratique du Web
30
Hauteur et largeur en CSS
•  Tout élément HTML possède une largeur et une hauteur.
•  La hauteur par défaut d’un élément HTML est déterminée par son contenu.
•  La largeur d’un élément, est déterminée par son type :
•  les éléments de type block occuperont par défaut tout l’espace disponible.
•  Les éléments de type inline, n’occuperont que la largeur nécessaire à leur contenu.
•  Pour modifier la hauteur d’un élément : la propriété height.
•  Pour modifier la largeur d’un élément : la propriété width.
•  Ces propriétés peuvent prendre des valeurs :
•  absolues,
•  relatives (utiles dans le cas d’un site responsive), ou
•  la valeur « auto » (calculée automatiquement par le navigateur).
Théorie et pratique du Web
31
Hauteur, largeur et modèle des boîtes
Important
Vous ne définissez que la hauteur et la largeur du contenu de
l’élément en soi. Les tailles des marges intérieures, extérieures et des
bordures viendront s’ajouter à cette hauteur et à cette largeur afin
de former la taille totale de l’élément.
height
width
Théorie et pratique du Web
32
Hauteur, largeur et modèle des boîtes
•  Exemple de mauvaise utilisation :
Testez le code :
https://jsfiddle.net/mohamed_sellami/gpa8q2f7/
Théorie et pratique du Web
33
Les bordures en CSS
•  Définir des bordures de couleurs, épaisseurs ou types différents
autour de nos éléments HTML.
•  En utilisant border-style, border-width et bordercolor
•  En utilisant la notation courte border.
Théorie et pratique du Web
Les styles de bordures
border-style
34
Théorie et pratique du Web
35
Bordures haute, droite, basse et gauche
•  Il est possible de définir des bordures différentes au dessus, à
droite, en dessous et à gauche de nos éléments HTML.
•  Ajouter les mots clefs top (haut), right (droit), bottom (bas) et left
(gauche) dans le nom de nos propriétés.
Testez le code :
https://jsfiddle.net/mohamed_sellami/n7ya0v0o/1/
Théorie et pratique du Web
36
Les bordures arrondies
•  Pour créer des bordures arrondies : la propriété border-radius.
•  prend une valeur en pixels qui va correspondre à la valeur du rayon de la
bordure.
•  Exemples :
Théorie et pratique du Web
37
Les marges en CSS
•  Deux types : intérieures (le padding) et extérieures (le margin)
•  padding, padding-top, padding-right, padding-bottom et
padding-left.
•  margin, margin-top, margin-right, margin-bottom et
margin-left.
Théorie et pratique du Web
38
Les ombres des boites
•  Pour créer des ombres autour de nos boîtes : box-shadow.
•  La propriété prend quatre valeurs dans l’ordre suivant :
1.  Le déplacement horizontal (vers la droite ou la gauche) de l’ombre ;
2.  Le déplacement vertical (vers le bas ou le haut) de l’ombre ;
3.  Le rayon de propagation de l’ombre ;
4.  La couleur de l’ombre.
Théorie et pratique du Web
39
La propriété CSS display
•  Par défaut, les éléments HTML s’affichent soit sous forme de «
bloc », soit « en ligne ».
•  Eléments block : <p>, <div>,<h1>, etc.
•  Eléments inline : <strong>, <span>, etc.
•  La propriété display permet de maîtriser la façon dont un
élément va être affiché, et ainsi de gérer la mise en page de nos
éléments.
•  Les valeurs possibles : inline, block, inline-block, et
none
Théorie et pratique du Web
40
Display : inline
•  display: inline
•  l’élément ciblé va se comporter comme un élément de type inline et donc
n’occuper que la largeur qui lui est strictement nécessaire.
•  Exemple :
Théorie et pratique du Web
41
Display : block
•  display: block
•  l‘élément ciblé va se comporter comme un éléments de type block et ainsi
prendre toute la largeur disponible.
•  Exemple:
Théorie et pratique du Web
42
Display : inline-block
•  display : inline-block
•  l’élément ciblé va être de type inline, tandis que ce qu’il contient (« l’intérieur
de la boîte ») va être considéré comme étant de type block.
•  Exemple :
Théorie et pratique du Web
Display : none
•  display : none
•  l’élément ciblé ne sera pas affiché
•  Utile pour faire du responsive design
43
Théorie et pratique du Web
44
La propriété CSS position
•  La propriété position permet de gérer le positionnement des
éléments HTML
•  de façon absolue,
•  relativement par rapport à d’autres éléments HTML, ou
•  par rapport à leur place d’origine.
•  Quatre valeurs possibles : static , relative , fixed , et
absolute :
•  position est utilisée conjointement avec les propriétés top, right,
bottom et left afin de positionner précisément les éléments.
•  Ces quatre propriétés vont prennent des valeurs en pixels (px)
Théorie et pratique du Web
Position : static
•  position: static
•  Positionnement par défaut des éléments HTML dans une page.
•  Pas affecté par les propriétés top, right, bottom et left.
45
Théorie et pratique du Web
46
Position : relative
•  position: relative
•  Positionnement relative par rapport à la position par défaut de l’élément.
Théorie et pratique du Web
47
Position : fixed
•  position: fixed
•  Positionnement « fixe ». L’élément HTML va toujours rester à la même place,
même si l’on descend dans la page.
•  Utile pour conserver un un menu constamment visible par
exemple.
Testez le code :
https://jsfiddle.net/mohamed_sellami/okdvuj1r/
Théorie et pratique du Web
48
Position : absolute
•  position: absolute
•  Permet de positionner un élément de façon relative par rapport à son parent
le plus proche auquel on a appliqué un positionnement (relative, fixed ou
absolute).
•  Si l’élément ne possède pas d’élément parent positionné spécifiquement,
celui-ci va se positionner par rapport à la page entière.
Testez le code :
https://jsfiddle.net/mohamed_sellami/67xzb18b/
Théorie et pratique du Web
49
Le z-index
•  En utilisant la propriété position, des éléments peuvent se
chevaucher.
•  La propriété z-index permet de choisir quel élément va apparaître
au dessus de quel.
•  La propriété z-index prend un nombre en valeur : un nombre plus
grand positionnera un élément devant un autre ayant un z-index
plus petit.
•  Exemple d’utilisation : un menu déroulant (afin que les rubriques s’affichent
devant le reste de la page)
Testez le code :
https://jsfiddle.net/mohamed_sellami/q6rmmeud/
Théorie et pratique du Web
50
Alignement des éléments HTML
•  Centrer horizontalement avec la propriété margin
•  une valeur pour les marges haute et basse (au choix)
•  la valeur auto pour les marges gauche et droite
•  L’élément à centrer doit être de type block et posséder une largeur définie
pour pouvoir être centré correctement.
Testez le code :
https://jsfiddle.net/mohamed_sellami/5g0anzya/2/
Théorie et pratique du Web
51
Alignement des éléments HTML
•  Aligner horizontalement avec la propriété position
•  Utiliser la valeur absolute de la propriété position.
•  Utiliser les propriétés left et right
Testez le code :
https://jsfiddle.net/mohamed_sellami/5rb8f40w/
Théorie et pratique du Web
Références
•  Une liste complète de propriétés CSS avec des exemples:
•  http://www.w3schools.com/cssref/
52
Téléchargement