Si le HTML contient des éléments comme celui-ci:
id="product42"
id="product43"
...
Comment faire correspondre tous ces identifiants commençant par "produit"?
J'ai vu des réponses qui font cela exactement en utilisant javascript, mais comment le faire avec uniquement CSS?
html
css
css-selectors
Guptron
la source
la source
product
est clairement un identifiant valide et n'a donc pas besoin de guillemets.:not([id^=product])
Je le ferais comme ceci:
Idéalement, utilisez une classe. Voici à quoi servent les cours:
Et maintenant, le sélecteur devient:
la source
Utilisez le sélecteur d'attribut
la source
J'ai remarqué qu'il existe un autre sélecteur CSS qui fait la même chose. La syntaxe est la suivante:
Cela sélectionnera tous les éléments ID commençant par le mot entre guillemets.
la source
att|=val
n'est PAS le même queatt^=val
. D'après la référence mentionnée: Le|=
sélecteur "Représente un élément avec l'attribut att, sa valeur étant soit exactement" val ", soit commençant par" val " immédiatement suivi de" - " ." Donc, un id comme "product42" ne correspondrait pas à|=
, mais "produit-42" le ferait.