jquery - CSS 选择器是如何工作的

标签 jquery html css

<分区>


想改进这个问题吗? 通过 editing this post 添加细节并澄清问题.

关闭 9 年前

如果我有一个 CSS 定义为;

.grid .data table tr.selected td [class^="icon-"], .grid .data table tr.selected td [class*=" icon-"] {
    background-image: url("../img/css-sprites.png");
}

它究竟是如何工作的?我的意思是,如果满足条件(tr 正在选择类并且它有一个子 td,它有任何具有包含名称“icon-”的类的子元素)

我的问题是背景图像将“应用于”哪个元素?

最佳答案

CSS 规则应用于匹配选择器的每个元素。因此,每个具有以 icon- 开头且具有指定父级的类名的元素都将获得该背景图像。

另请注意,有两条规则,以逗号分隔:

.grid .data table tr.selected td [class^="icon-"],
.grid .data table tr.selected td [class*=" icon-"]

多个选择器意味着一个或另一个需要匹配才能应用规则。

属性匹配选择器 ^= 表示“开始于”。 *= 表示“包含”。请点击第一条评论的链接以获取有关该特定类型选择器的更多信息:css selector by class prefix (感谢 BoltClock)。

这也是一本好书:The Skinny on CSS Attribute Selectors

关于jquery - CSS 选择器是如何工作的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17648718/

上一篇:html - 将焦点放在复选框上

下一篇:html - 网站设计框架

相关文章:

jquery - 通过 jQuery 更改 CSS 背景图像不起作用

html - 可以使用 <span/> 关闭跨度吗?

php - 使用 autocomplete.js 中的值的 id 填充隐藏的输入

javascript - 解析巨大的json数据

javascript - PHP AJAX - &lt;input&gt; 元素可以像 <form> 一样具有 "action"吗?

html - 将 HTML 标签设置为位置 :relative

php - 如何从 http 更改为 https?

javascript - jquery ajax无限滚动

html - 我无法让我的按钮以正常大小显示

javascript - vue 进入过渡无法正常工作