css 查询选择不包含 table 元素的 div 元素
css query for selecting div element which does not contain table element
我需要 select div 元素外 table ie.text ' 所需地址 '
如果我使用 main div[itemprop="address"] 我得到所有 8 地址
我想唯一标识所需的 div,但不包含 table 作为父项
Html:
<main>
<div>
<div itemprop="address">Required Address</div>
<table>
<tbody>
<tr><td>
<div itemprop="address">Address1</div>
</td></tr>
<tr><td>
<div itemprop="address">Address2</div>
</td></tr>
<tr><td>
<div itemprop="address">Address3</div>
</td></tr>
<tr><td>
<div itemprop="address">Address4</div>
</td></tr>
<tr><td>
<div itemprop="address">Address5</div>
</td></tr>
<tr><td>
<div itemprop="address">Address6</div>
</td></tr>
<tr><td>
<div itemprop="address">Address7</div>
</td></tr>
</tbody>
</table>
</div>
</main>
您可以在此处使用子选择器:
doc.select("main > div > div[itemprop='address']");
如果这不是您的用例的选项,您应该为此使用 id
。
main div > div[itemprop="address"] {
// some code
}
使用 >
operator.The 样式仅适用于 div,前提是它有一个父标签 div 并且 main 作为父标签。
main > div > div[itemprop="address"] {
color: blue
}
<main>
<div>
<div itemprop="address">Required Address</div>
<table>
<tbody>
<tr><td>
<div itemprop="address">Address1</div>
</td></tr>
<tr><td>
<div itemprop="address">Address2</div>
</td></tr>
<tr><td>
<div itemprop="address">Address3</div>
</td></tr>
<tr><td>
<div itemprop="address">Address4</div>
</td></tr>
<tr><td>
<div itemprop="address">Address5</div>
</td></tr>
<tr><td>
<div itemprop="address">Address6</div>
</td></tr>
<tr><td>
<div itemprop="address">Address7</div>
</td></tr>
</tbody>
</table>
</div>
</main>
或者,您可以设置(在本例中)通用 div 的颜色,并将其回滚到 table 标签内的 div。
div[itemprop="address"] {
color: red;
}
table div[itemprop="address"] {
color: initial;
}
<main>
<div>
<div itemprop="address">Required Address</div>
<table>
<tbody>
<tr>
<td>
<div itemprop="address">Address1</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address2</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address3</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address4</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address5</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address6</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address7</div>
</td>
</tr>
</tbody>
</table>
</div>
</main>
我需要 select div 元素外 table ie.text ' 所需地址 '
如果我使用 main div[itemprop="address"] 我得到所有 8 地址
我想唯一标识所需的 div,但不包含 table 作为父项
Html:
<main>
<div>
<div itemprop="address">Required Address</div>
<table>
<tbody>
<tr><td>
<div itemprop="address">Address1</div>
</td></tr>
<tr><td>
<div itemprop="address">Address2</div>
</td></tr>
<tr><td>
<div itemprop="address">Address3</div>
</td></tr>
<tr><td>
<div itemprop="address">Address4</div>
</td></tr>
<tr><td>
<div itemprop="address">Address5</div>
</td></tr>
<tr><td>
<div itemprop="address">Address6</div>
</td></tr>
<tr><td>
<div itemprop="address">Address7</div>
</td></tr>
</tbody>
</table>
</div>
</main>
您可以在此处使用子选择器:
doc.select("main > div > div[itemprop='address']");
如果这不是您的用例的选项,您应该为此使用 id
。
main div > div[itemprop="address"] {
// some code
}
使用 >
operator.The 样式仅适用于 div,前提是它有一个父标签 div 并且 main 作为父标签。
main > div > div[itemprop="address"] {
color: blue
}
<main>
<div>
<div itemprop="address">Required Address</div>
<table>
<tbody>
<tr><td>
<div itemprop="address">Address1</div>
</td></tr>
<tr><td>
<div itemprop="address">Address2</div>
</td></tr>
<tr><td>
<div itemprop="address">Address3</div>
</td></tr>
<tr><td>
<div itemprop="address">Address4</div>
</td></tr>
<tr><td>
<div itemprop="address">Address5</div>
</td></tr>
<tr><td>
<div itemprop="address">Address6</div>
</td></tr>
<tr><td>
<div itemprop="address">Address7</div>
</td></tr>
</tbody>
</table>
</div>
</main>
或者,您可以设置(在本例中)通用 div 的颜色,并将其回滚到 table 标签内的 div。
div[itemprop="address"] {
color: red;
}
table div[itemprop="address"] {
color: initial;
}
<main>
<div>
<div itemprop="address">Required Address</div>
<table>
<tbody>
<tr>
<td>
<div itemprop="address">Address1</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address2</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address3</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address4</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address5</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address6</div>
</td>
</tr>
<tr>
<td>
<div itemprop="address">Address7</div>
</td>
</tr>
</tbody>
</table>
</div>
</main>