Caractéristiques du CSS: lignes directrices détaillées (y compris les pratiques exemplaires et les exemples)
La spécificité CSS est un outil important dans l’arsenal des concepteurs et développeurs web et de toute personne qui modifie la conception d’un site Web en utilisant des feuilles de style en cascade. Si vous vous êtes déjà trouvé dans une situation qui ne permet pas à un élément de se comporter ou de regarder comme vous le souhaitez, vous avez peut – être déjà ressenti sa force. Mais n’est – il pas bon d’exploiter la spécificité du css pour en tirer profit plutôt que de le laisser à sa merci? Si tu hoches la tête avec compassion, tu as raison. Nous allons maintenant examiner ce concept important afin que vous puissiez l’utiliser pour contrôler l’apparence de votre site et des thèmes WordPress, et non l’inverse.
Comprendre la spécificité du CSS: cours accéléré du CSS alors, de quoi parlons – nous exactement lorsque nous parlons de spécificité du CSS? En bref, c’est la façon dont le navigateur décide quelle valeur d’attribut appliquer à quel élément de la page. Pour comprendre ce processus, vous devez d’abord comprendre le fonctionnement général du SCS. Commençons donc par quelques termes. Voici une étiquette CSS typique:. Sélecteur {attributs: valeurs;} Qu’est – ce que ça veut dire? Sélecteur – cette section décrit les éléments auxquels ce CSS s’applique. Il peut s’agir d’un DIV, d’un P, d’un H1 ou d’une classe ou d’un Id. Widget ou # Navigation principale. Propriétés – règles appliquées à l’élément sélectionné. Il peut s’agir de tout, des marges de couleur au Flex. Valeur – il s’agit de la valeur de l’attribut, par exemple, pour l’attribut marge gauche, il peut être 20px. Comment écraser CSS en plus de ce qui précède, vous devez savoir comment votre navigateur traite les feuilles de style de haut en bas. Cela signifie que les déclarations qui apparaissent plus tard dans la Feuille de style écraseront les déclarations qui apparaissent plus tôt.
– Oui. Widget {taille de police: 18px;}. Contrôle {taille de police: 16px;} Dans l’exemple ci – dessus, vous pouvez voir que les deux déclarations sont
Chaque page ne peut s’effondrer que sur un élément spécifique, écrit comme # Navigation principale. Styles en ligne: les déclarations en ligne sont
Toujours écraser les styles dans les fichiers CSS externes. Ceci s’applique également aux styles déclarés dans la Section Directement dans le fichier HTML. Ils ont aussi la priorité. Voici un exemple de point de départ à la maison:
Formulaire optin {couleur: Rouge;} [] {couleur: bleu;} Bien que les deux sélecteurs soient techniquement spécifiques à l’id, l’un est un sélecteur d’attributs et l’autre est un sélecteur d’id. Par conséquent, ce dernier prévaut. Dans le cas de la spécificité CSS, même une valeur spécifique « calculée» n’est pas un terme inapproprié. Le navigateur applique des valeurs numériques à différents types de sélecteurs pour comprendre leurs particularités. Il commence à 0 (0,0,0,0), la valeur du sélecteur de type est 1 (0,0,0,1), le sélecteur de classe est marqué 10 (0,0,1,0), l’ID 100 (0,1,0,0) et le style inline 1000 (1,0,0).
Vous pouvez les ajouter les uns aux autres. Par conséquent, si vous utilisez l’ID du sélecteur de type suivi (comme # Main navigation a), sa valeur est 101. Cependant, il est important de garder à l’esprit qu’il ne s’agit pas vraiment d’un système basé sur 10. Par exemple, (0,2,11,3) n’est pas égal à (0,3,1,3). Toutefois, par souci de simplicité, il est préférable d’y réfléchir en utilisant ces termes. Les sélecteurs dont la spécificité est définie à 0 comprennent des éléments tels que le sélecteur universel *, le combinateur >, +, ~, les valeurs héritées et même les requêtes multimédias. Cela signifie qu’ils n’augmentent pas la spécificité. Voir ci – dessous pour plus d’informations.
Passons à un domaine plus spécifique: règles et exemples tout d’abord, je m’excuse pour le jeu de mots ci – dessus. Deuxièmement, vous avez maintenant une compréhension générale du fonctionnement des fonctionnalités CSS, et bien sûr, il y a beaucoup plus à apprendre. Premièrement, les règles générales du CSS restent applicables. S’il y a plus d’une déclaration qui est également spécifique et qui vise le même élément, alors
La dernière déclaration qui apparaît dans la Feuille de style. Barre latérale. Contrôle {style de police: normal;}. Conteneur Contrôles {style de police: italique;} Parce qu’ils se composent de deux sélecteurs de classe, les deux déclarations ont la même spécificité. Par conséquent, la règle de cascade s’applique et tout texte dans le Widget se termine en italique.
D’autre part, la proximité n’est pas importante. Si vous regardez les balises HTML ci – dessous, vous pouvez voir que la barre latérale est plus proche de la cible CSS que le conteneur.
Mais ce n’est pas parce qu’il est plus proche qu’il a été rendu. Pour le même type de sélecteur de comptage, la dernière valeur déclarée prévaut. La spécificité et l’héritage de la spécificité CSS sont également importants dans le contexte de l’héritage des valeurs. Certains attributs, tels que les familles de polices ou les couleurs, s’appliquent automatiquement à leurs éléments enfants s’ils sont définis comme des éléments parents. C’est ce qu’on appelle l’héritage, c’est pourquoi vous pouvez mettre en page l’ensemble du site en l’appliquant au balisage du corps.
Toutefois, il est important de noter comment fonctionne la spécificité dans ce contexte. Il s’est avéré que lorsque vous Ciblez directement un projet, les règles héritées ont toujours préséance sur les balises héritées, peu importe à quel point elles sont spécifiques. Dans le contexte de l’exemple ci – dessus, tout attribut appliqué au Widget a priorité sur l’attribut hérité du conteneur. Conteneur {famille de polices: Tahoma;}. Contrôles {famille de polices: verdana;} Spécificité et! En parlant de la particularité du CSS, il y a un éléphant dans la pièce et son nom est! Important Si vous n’êtes pas familier avec cette propriété, c’est une façon de réduire la spécificité. Vous pouvez ajouter! Important, écrasez les valeurs suivantes à la fin de toute valeur d’attribut.
P {couleur de fond: jaune! Important;} Conteneur Barre latérale. Widget # exemple de texte {couleur de fond: lightg
Vert;} Dans l’exemple ci – dessus, la deuxième déclaration est évidemment plus spécifique que la première. Cependant, seulement parce que le premier contient! Important: la couleur de fond devient jaune au lieu de vert clair. Bien que techniquement sans rapport avec la spécificité du CSS, les règles! \
La guerre. En résumé, les problèmes de spécificité CSS sont l’un des problèmes rencontrés d’une manière ou d’une autre dans le traitement des feuilles de style, de la conception et du balisage. Au début, ils pourraient être déprimés parce que tu ne comprends pas du tout \