XPath 中的 CSS 选择器

标签 css xpath css-selectors

是否可以在 XPath 中指定 CSS 选择器?本质上,我想找到同时满足 .myClass divdiv[contains(., 'Hello!')] 的元素。

最佳答案

不,您不能将 CSS 选择器语法和 XPath 语法组合到单个表达式中。这两种语言都没有任何功能可以让您从另一种语言提供表达式。

您只能将 CSS 选择器作为 XPath 合并到 XPath 中,这意味着您需要自己对其进行翻译。对于您的情况,这是生成的 XPath 表达式:

//*[contains(concat(' ', @class, ' '), ' myClass ')]//div[contains(., 'Hello!')]

Of course, this depends on what you can accomplish with CSS selectors or XPath. For example, if the :contains() pseudo-class hadn't been dropped from CSS3, you would have been able to use this CSS selector just as well:

.myClass div:contains('Hello!')

但它已从规范中删除,因此您只能将其用作 jQuery 选择器或 Selenium CSS 定位器。

关于XPath 中的 CSS 选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9005170/

相关文章:

html - CSS 输入类型=文本

java - 编译 XPath 表达式问题

internet-explorer - 让 xpath 2.0 函数在任何浏览器中工作

html - XPath 用于根据元素文本内容从 HTML 片段获取节点

预期 jQuery 选择器

html - CSS3 :not selector for div and its children

css - 有什么办法可以改变 rich :calendar holidays

jquery - LESS 文件扩展名变量

html - 为什么 Safari 选择灰色而不是白色

html - 如何使用 :nth-child? 将背景应用于无序列表