Remi Forax
“Responsive web design (RWD) is an approach to web design which makes web pages render well on a variety of devices and window or screen sizes.”
source: Wikipedia.org - RWD
“Le responsive web design (RWD) est une approche de la conception de sites web qui fait en sorte que les pages web soient affichées corectement sur une grande variété d'appareils et de tailles de fenêtre ou d'écran.”
source : Wikipedia.org - RWD
Repose sur 3 idées
Devient une réalité suite au Google Mobilegeddon
Media Queries | juin 2012 |
Media Queries level 4 | sept 2017 |
Le sélecteur @media permet d'appliquer des règles CSS différentes en fonction par exemple de la taille de la zone d'affichage (viewport).
@media est suivi d'un type d'afficheur parmi
min-width indique la taille minimum,
donc cela s'applique si la taille est supérieure (>=)
max-width indique la taille maximum,
donc cela s'applique si la taille est inférieure (<=)
On utilise and pour appliquer plusieurs critères
On utilise not pour inverser les critères
Pour fait l'équivalent du ou,
on sépare les critères par des virgules
On peut indiquer le media dans la balise link
mais on le fait pas car le browser charge tous les fichiers avant d'appliquer le bon
Sur mobile on ne veut pas de scrollbar horizontale,
donc on fixe la largeur du viewport
initial-scale est le facteur de zoom
On affiche chaque div avec une largeur de 100%
Ne pas oublier de contrôler le viewport avec la balise meta !
col-1 est une case qui prend une colonne,
col-2 est une case qui prend deux colonnes
Dans chaque case de la grille,
on met un div qui contient le texte
Souvent, les grilles ont une taille de 12 colonnes
mais le principe est le même.
qui permette surtout un meilleur alignement vertical
vw pourcentage en fonction de la largeur du viewport
vh pourcentage en fonction de la hauteur du viewport
Cela évite d'essayer de calculer la taille de la fonte en px, pt ou em
width agrandit/rétrécit l'image
pour qu'elle tienne en largeur
max-width rétrécit l'image pour qu'elle tienne en largeur
La balise HTML5 picture accepte aussi les media-queries