有没有人遇到过更具体的!important
声明没有覆盖另一个!important
声明的情况?这是基本的CSS:
.x-floating {
position: absolute !important;
z-index: 10000 !important;
}
这是我想用来覆盖 z-index 的内容:
.x-msgbox.x-floating {
z-index: 10001 !important;
}
当我通过 Windows 上的 Chrome(或 Safari)调试器进行检查时,我看到.x-msgbox.x-floating
声明被覆盖(划掉),并且x-floating
声明处于活动状态。这违背了我对 css 特异性的了解,以及我对简化测试的期望。
示例代码:
由于我使用的是 Sencha,这只能在 Chrome 或 Safari 中使用,但这里有一个jsFiddle 链接(可能不符合热链接 Sencha 的源代码,但这永远不会获得足够的视图来解决它的问题)。要运行测试,请单击“选择日期”按钮,然后通过拖动旋转其中一个轮子。将出现一个消息框。比较消息框和日期选择器(每个的顶级元素——body 的子元素;另一种方法是查找带有 class 的元素x-floating
)。