CSS 没有特定子元素的选择器或 XPath
CSS selector or XPath for elements without specific child
示例如下:
<ul>
<li>list item one</li>
<li>list item two
<ol>
<li test="video">Nested item one</li>
<li test="audio">nested item two</li>
</ol>
<ol>
<li test="video">Nested item three</li>
</ol>
</li>
<li>list item three</li>
</ul>
如果我只想 select <ol>
没有子元素 <li test="audio">
的元素,请问 CSS select 或者 XPath 是什么?
这个 XPath,
//ol[not(li/@test="audio")]
将 select 没有 li
child 且 test
属性值为 "audio"
的所有 ol
元素。
根据 OP follow-up 评论更新添加 ol
元素还必须具有 li
child 的要求test
"video"
...
的属性值
这个 XPath,
//ol[not(li/@test="audio") and li/@test="video"]
将select所有ol
个元素
- 不
li
child test
属性值为 "audio"
,并且
- do 有一个
li
child test
属性值为 "video"
示例如下:
<ul>
<li>list item one</li>
<li>list item two
<ol>
<li test="video">Nested item one</li>
<li test="audio">nested item two</li>
</ol>
<ol>
<li test="video">Nested item three</li>
</ol>
</li>
<li>list item three</li>
</ul>
如果我只想 select <ol>
没有子元素 <li test="audio">
的元素,请问 CSS select 或者 XPath 是什么?
这个 XPath,
//ol[not(li/@test="audio")]
将 select 没有 li
child 且 test
属性值为 "audio"
的所有 ol
元素。
根据 OP follow-up 评论更新添加 ol
元素还必须具有 li
child 的要求test
"video"
...
这个 XPath,
//ol[not(li/@test="audio") and li/@test="video"]
将select所有ol
个元素
- 不
li
childtest
属性值为"audio"
,并且 - do 有一个
li
childtest
属性值为"video"