Il est également possible de localiser la balise à atteindre par l'intermédiaire de l'un de ses attributs ou de leurs valeurs.

C'est-à-dire, qu'un style pourra être appliqué à une commande HTML seulement si l'attribut ou sa valeur correspond à la situation requise. Afin de parfaitement décrire ces contextes, il existe plusieurs méthodes d'énonciations*.

Par exemple, lorsque nous voudrions que la balise <a> contenant l'attribut href ou la valeur http:// , alors il suffira d'écrire l'une des lignes suivantes :

a[href] {background-color: yellow; font-color: blue}
a[href|="http://"] {background-color: green; font-color: yellow}
*Méthode
Description Exemple Balise cible
Balise[Attribut]
La balise cible doit contenir l'attribut cité. table[border] {
border-style: double
}
<table
border="...">
Balise[Attribut = Valeur]
La balise cible doit non seulement contenir l'attribut mais également correspondre exactement à la valeur souhaitée. table[border="0"] {
background-color:
rgb(0, 120, 255)
}
<table
border="0">
Balise[Attribut ~= Valeur]
La valeur exigée doit être contenu dans la balise, mais toutefois sans qu'elle corresponde exactement. a[title~="site"] {
outline-style: outset
}
<a
href="page.html"
title="... site ...">
Balise[Attribut |= Valeur]
Cela signifie que le contenu de l'attribut devra commencer impérativement par la valeur désirée. a[title="Allez"] {
font-color: aqua
}
<a
href="page.html"
title="Allez ...">
Exemple
<html>
  <head>
    <style>
      <!--
      Balise_cible[Attribut=Valeur]{Propriété1: Valeur1;...} 
      ...
      Règles de style
      ...
      -->
    </style>
  </head>
  <body>
    <Balise_cible Attribut="Valeur" ... > ... </Balise_cible>
    ...
    Diverses commandes HTML
    ...
  </body>
</html>
Compatibilité
Windows Macintosh
NE4 NE6 NE7 IE5 IE55 IE6 OP5 OP6 OP7 NE4 NE6 NE7 IE4 IE5