Maison >développement back-end >tutoriel php >Comment puis-je sélectionner avec précision les classes CSS à l'aide de XPath ?
La sélection de classes CSS avec XPath pose un défi unique car XPath n'a pas d'équivalent natif au sélecteur de classe CSS. Cet article explore les subtilités de ce problème et propose une solution efficace.
Les sélecteurs XPath utilisant //*[@class="foo"] ne parviennent pas à sélectionner éléments avec plusieurs classes ou espaces autour du nom de la classe.
Sélecteurs comme //*[contains (@class, "foo")] fait correspondre les éléments avec des classes telles que foobar, ce qui est incorrect.
Pour sélectionner des éléments avec des classes spécifiques avec précision, XPath utilise le sélecteur suivant :
//*[contains(concat(" ", normalize-space(@class), " "), " foo ")]
Le sélecteur XPath fourni est équivalent au sélecteur CSS *[class~="foo"], qui fait correspondre les éléments avec les classes qui contiennent la classe cible. Comprendre ces nuances est crucial pour la maîtrise de XPath.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!