Raconté par Vincent Jugé
sur la base d'un cours créé par Rémi Forax
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 (min) :
le sélecteur s'applique si la taille courante est ≥ min ;
max-width indique la taille maximum (max) :
le sélecteur s'applique si la taille courante est ≤ max .
On utilise and pour appliquer plusieurs critères.
On utilise not pour inverser les critères.
Pour faire l'équivalent du ou,
on sépare les critères par des virgules.
On peut indiquer le media dans la balise link
mais, en pratique, on le fait pas, car le browser chargerait tous les fichiers avant d'appliquer le bon.
Sur mobile on ne veut pas de barre de défilement 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 12 tailles de colonne…
mais le principe est le même.
qui permettent 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.