我有一个关于 CSS 文件及其在浏览器中的应用顺序的问题。 我们有:
- 浏览器(系统)CSS 文件,
- 用户 CSS 文件,
- 用户CSS重要文件,
- 站点 CSS 文件,
- 站点CSS重要文件,
当页面加载时,一些 CSS 代码会根据顺序或 !important 字替换其他代码。我上面列出的顺序是否正确,所以站点 CSS 重要文件可以覆盖所有以前的样式?
最佳答案
CSS 代码不会替换其他 CSS 代码,与解析样式表的顺序无关。实际上没有应用顺序,因为所有适用的样式表都被考虑在内。当多个样式表为一个元素的一个属性赋值时,那么根据cascade rules解决冲突。 .那么顺序是:
用户代理声明(浏览器默认样式)
用户正常声明
作者(页面)正常声明
作者(页)重要声明
用户重要声明
因此,作者(页面)!important
声明胜过除用户 !important
声明之外的所有内容。在 Css 1 中,顺序有所不同,但这在 CSS 2 中发生了变化,浏览器遵循当前规则:用户始终拥有最终决定权,如果他想行使他的权利。
关于CSS文件应用顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14002790/