Spécificité CSS et requêtes multimédias : surmonter les problèmes de priorité avec la largeur minimale
Lors de la conception de sites Web réactifs, comprendre la spécificité CSS et l'interaction des médias les requêtes sont cruciales. Un problème courant rencontré lorsque l'on s'appuie sur min-width pour éviter la réplication de style est que des valeurs de min-width inférieures peuvent remplacer des valeurs plus élevées.
Considérez le code suivant :
@media only screen and (min-width: 600px) { h2 { font-size: 2.2em; } } @media only screen and (min-width: 320px) { h2 { font: normal 1.7em/2.1em Helvetica, sans-serif; } }
Intuitivement, on pourrait attendez-vous à ce que la taille de police de 2,2 em s'applique aux résolutions supérieures à 600 px. Cependant, comme vous l'avez observé, le paramètre de police 1,7em défini dans la requête multimédia d'une largeur minimale de 320 px remplace le paramètre 2,2em.
Cela se produit car les deux requêtes multimédias sont évaluées comme vraies pour les résolutions supérieures à 600 px. Dans de tels cas, la règle déclarée en dernier dans la cascade CSS (c'est-à-dire le paramètre 1.7em) est prioritaire.
Surmonter les problèmes de priorité
Pour résoudre ce problème de priorité, vous avez deux options principales :
Recommandation
Utilisation la première option est généralement recommandée, car elle maintient la clarté de votre structure CSS et évite le besoin d'ajustements de spécificité. En réorganisant les requêtes multimédias comme suit, vous pouvez vous assurer que le comportement souhaité est atteint :
@media only screen and (min-width: 320px) { h2 { font: normal 1.7em/2.1em Helvetica, sans-serif; } } @media only screen and (min-width: 600px) { h2 { font-size: 2.2em; } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!