现在我想使用CSS选择器来最大化850到900的宽度。但我想指定我想要展开的TD应该匹配以下内容: -
<nobr>
标记内包含“描述”字样的TD之后。有人可以这样做吗?
答案 0 :(得分:1)
如果您可以将td
的内容添加到这样的data attribute
中:
<td data-td-content="Description">Description</td>
然后你可以使用
td[data-td-contents="description"] + td
作为CSS选择器。但这是如此具体,即使更改大写字母也会使规则无效。不是真的推荐,但可能。它还会使您传递和处理的数据量翻倍,从而使页面大小翻倍。不理想。
您也可以使用:contains()
选择器为此使用jQuery。您可以执行以下操作:
$("td:contains('Description') + td")
这将返回包含文本值的td
之后的元素,然后您可以使用该元素。下面是一个片段中的示例,显示它有效:
$("td:contains('description') + td").addClass('selected')
.selected {
color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<table>
<tr>
<td>title</td>
<td>My Title</td>
</tr>
<tr>
<td>description</td>
<td>My Description</td>
</tr>
</table>
当然,这也要求您也可以访问该脚本。否则没有直接的方法可以选择这样的东西。