我知道有很多所谓的“css重置”,例如。
但我不明白的是,为什么用更简单的方法似乎是不可能的。
据我所知
initial
关键字将属性重置为CSS规范中定义为该属性默认值的值。
从现在起,我们有了
all
属性之类的关键字,我希望我可以使用
* {
all: initial;
}
or
:root {
all: initial;
}
而不是所有这些
reset.css
s和
normalize.css
s、 也就是说,我希望其中一个简短的snipet将帮助我从用户代理样式表中删除添加到网页的样式。
但它并不像我预期的那样有效。看来
:root, html, body {
all: initial
}
根本不会从用户代理样式表中删除“继承”的样式
* {
all: initial
}
过于激进地删除样式。例如,它使我的
style
和
script
元素可见!我不认为CSS规范说这两个元素应该是可见的。我相信CSS规范说他们应该
不
看得见的就好像
* {
全部:首字母
}
不是将我的样式重置为CSS规范级别,而是将它们重置为绝对零级别。这不是我想要的。
谁能解释一下我的理解有什么不对吗?