- @layer A.B
@layer A
@layer C
非 layer 包裹块
!important 下的 @layer C.D
!important
规则的优先级还是凌驾于非 !important
规则之上的 。 上述 DEMO 还是比较有意思的 , 感兴趣的可以看看:CodePen Demo -- CSS Cascade @layer Demo非 @layer 包含块 !important 与 @layer 包含块 !important到这里 , 你也许会以为你懂了 。 好 , 我们再来看一个 DEMO , 如果我们给非 @layer 包含块 , 也加上一个
https://codepen.io/Chokcoco/pen/KKZKBRr
!important
规则 , 事情就变得有趣了 。 <div></div>div { width: 200px; height: 200px; background: black!important;}@layer A { div { background: blue; } @layer B { div { background: red; } }}@layer C { div { background: yellow; } @layer D { div { background: green!important; } }}仔细看上述代码 , 非 @layer 包含块 , 我们也加上了一个
!important
规则 , 按照上述我能描述的规则来看 , 非 @layer 包含块的优先级高于 @layer 包含块 , 那么正常而言 , 我们不难猜测 , 这里 background: black!important
的优先级应该要比 background: green!important
高 , 最终 <div>
应该展示黑色 。 而实际上 , 这里最终
<div>
的颜色还是 green
。 这里就又有一个非常有意思的知识点了 , !important 下样式优先级的规则与非 !important 正常状态下刚好相反 。 这是一个非常重要的特性 , 在比较正常(非
!important
)规则时 , 越是级联(排序较后的 @layer 规则) , 优先级越低;反之 , 在比较 !important
规则时 , 越是级联靠后的(排序较后的 @layer 规则) , 优先级越高 。 这个 , 更进一步的话 , 我们需要去了解 CSS Cascading 相关的知识了 。
CSS Cascade 规范在 CSS @layer 之前 , 我们简单看一张图:
文章插图
上图表面的是在没有 CSS @layer 之前 , CSS 样式申明的优先级排序 , 根据 CSS Cascading 4(Current Work) 标准 , 定义的当前规范下申明的层叠顺序优先级如下(越往下的优先级越高 , 下面的规则按升序排列):
- Normal user agent declarationsNormal user declarationsNormal author declarationsAnimation declarationsImportant author declarationsImportant user declarationsImportant user agent declarationsTransition declarations
文章插图
- User Agent - 用户代理普通样式
User - 用户设置的普通样式
Author - 页面作者普通样式
Animations - 动画样式
❗️Author - 页面作者 !important 样式
❗️User - 用户设置的 !important 样式
❗️User Agent - 用户代理的 !important 样式
Transitions - 过渡样式
简单解释一下:用户代理样式:浏览器会有一个基本的样式表来给任何网页设置默认样式 。 这些样式统称用户代理样式页面作者样式:网页的作者可以定义文档的样式 , 这是最常见的样式表 。 大多数情况下此类型样式表会定义多个 , 它们构成网站的视觉和体验 , 即页面主题 , 可以理解为页面作者样式用户样式:读者 , 作为浏览器的用户 , 可以使用自定义样式表定制使用体验 , 自定义用户偏好 , 可以理解为用户样式
关于 CSS Cascading , 也就是层叠规范 , 你可以看看我的这篇文章加深理解 -- 深入理解 CSS(Cascading Style Sheets)中的层叠(Cascading) 。而当有了 CSS @layer 之后 , 这个层叠优先级顺序有了更新 , 具体优先级如下:
https://github.com/chokcoco/iCSS/issues/76
文章插图
整体会变更为复杂一些 , 但是总体还是遵循了两个规则:
推荐阅读
- CPU作为电脑的中心枢纽,其作用就相当于我们的人脑一样,而且CPU价格也很贵。所以,我们不时一定要好好保养CPU。下面小编就来给大家介绍与CPU保养相关
- 系统还原在哪 如何打开系统还原新系统了解的东西
- 战魂铭人蓝拳怎么玩-蓝拳玩法及获取攻略您需要了解的
- FHD是指的什么 FHD是什么意思新系统了解的东西
- 带你了解互联网发展趋势 互联网发展趋势
- 中华历史 五千年悠悠岁月 沧桑巨变 助你了解更多故事
- 文件在哪 怎样打开文件新系统了解的东西
- win7vista appdata文件夹是什么东西 可以删除吗新系统了解的东西
- 电脑中无法修改窗口颜色怎么办?新系统了解的东西
- 浏览网站时弹出此网站的安全证书有问题的解决方法新系统了解的东西