通过兄弟内容选择元素

时间:2016-05-25 07:15:53

标签: xpath css-selectors

<p>
    <strong>
        <span>Content</span>
    </strong>
</p>

<table>

</table>

如图所示,table元素是我想要选择的目标,而我唯一可以确定的是它前面的兄弟中的文本Content不会改变。

那么可以通过css或xpath根据table选择Content吗?

2 个答案:

答案 0 :(得分:1)

XPath的某些变体可以找到相同的table元素,即使只考虑那个小的HTML代码段也是如此。就个人而言,我可能会使用以下其中一项:

//p[normalize-space()='Content']/following-sibling::table[1]

//p[strong/span/span='Content']/following-sibling::table[1]

//span[text() = 'Content']/following::table[1]

答案 1 :(得分:0)

一个可能的答案可能是:     //table[preceding::span[text()='Content']]

前面的轴名称选择在文档中当前节点之前出现的所有节点,除了祖先,属性节点和命名空间节点,而 text()允许指定关于内容的条件。