57 votes

Ordre de priorisation lors de l'utilisation de plusieurs fichiers CSS contradictoires

Lorsque vous utilisez plusieurs fichiers CSS sur la même page et qu'ils entrent en collision, comment puis-je savoir lequel va être utilisé? Par exemple, si l’un dit fond de corps bleu et l’autre dit rouge.

97voto

Dave Points 14168

Si les deux morceaux de CSS ont la même spécificité - par exemple ils sont tous les deux "corps" {", puis selon ce qui est appelé en DERNIER remplace le précédent.

MAIS si quelque chose a une spécificité plus élevée (plus précisément le sélecteur), il sera utilisé quel que soit l'ordre. Par exemple:

<div id="myDiv"></div>

/* CSS: */
#myDiv { background-color: blue; }
div { background-color: red; }

Cela permettrait de rendre l'arrière-plan de couleur bleu, même si le bleu a été d'abord parce que le sélecteur d'id est plus spécifique que le général div sélecteur d'élément.

L'inclusion de !important remplace à la fois la spécificité et l'ordre, mais, au moins, à mon avis, doit être utilisé uniquement si vous êtes en train de jouer avec un code tiers dans lequel vous n'avez pas accès à la modifier de toute autre façon.

Remarque: Remplacer les règles de travail de la même manière sur les fichiers CSS externes. Imaginez mettre de la première à la dernière, de haut en bas. Les sélecteurs appelé dans le premier(s) sera remplacé par la même spécificité des sélecteurs dans tous les fichiers.

Comment faire pour tester:

Dans Chrome, Firefox et moderne versions d'IE (probablement Safari trop), vous pouvez faire un clic droit sur quelque chose et cliquez sur "Inspecter l'Élément". Cela va vous montrer le code HTML ainsi que toute appliqué CSS. Lorsque vous faites défiler la CSS, vous verrez des choses qui sont barré - cela signifie qu'ils sont soit incorrect CSS ou ont été écrasés. Pour tester, vous pouvez modifier les sélecteurs CSS pour les rendre plus précis et de voir si ça fait de l'onu-barré...etc. Jouer w/ cet outil est TRÈS utile.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X