#

> Les sélecteurs CSS

Comme nous l’avons vu en cours, il y a 3 manières principales de cibler un élément en CSS :

  • par type de balise
    ex : article {}  va sélectionner toutes les balises <article> de la page
  • par classe CSS
    ex : .bigtext {} va sélectionner toutes les balises HTML qui ont l’attribut class= »bigtext »
    (le nom de la classe est arbitraire, à vous de le créer dans la feuille de style)
  • par identifiant CSS
    ex : #supertruc {} va sélectionner l’unique balise HTML qui a l’attribut id= »supertruc »
    (un id est « unique », il ne peut servir que sur un seul élément html, à réserver pour une utilisation exceptionnelle)

Ensuite on 3 façons principales de combiner ces 3 syntaxes, pour cibler plus précisément des éléments spécifiques :

  • avec des « espaces » pour décrire un « chemin » d’imbrication HTML
    ex : header nav li {} qu’on peut traduire par « les éléments li, seulement s’ils sont dans un élément nav, lui-même dans un élément header »
  • sans espace
    ex : p.bigtext {} qui se traduit « les paragraphes qui ont aussi l’attribut HTML class= »bigtext » »
  • la virgule, qui signifie ET
    ex : h1, h2, h3, h4, h5, p, li {}, c’est à dire « les h1 et les h2 et les h3 et les h4, etc »

Pour finir, il est tout à fait possible de combiner tout ça.
ex : section article.graphisme, header nav {} qui signifie « les articles avec la classe graphisme qui sont dans un élément section, ET les balises nav qui sont dans un élément header »

En suite il y a les pseudo-sélecteurs… mais gardons ça pour plus tard.
Plus d’explications et d’exemple ici, ou ailleurs sur le net…