废话不多说,直入话题。
normalize.css产生来源
我一直相信这样一个道理“物有本末,是有终始”。任何事物都不可能是凭空产生的,一定有一定的现实基础,历史需求。
那么normalize.css的现实基础和历史需求是什么?
normalize.css的现实基础和历史需求是人们需要一种统一的HTML元素的默认解读样式,以求在不同的浏览器端口可以实现一致的默认样式设置。不同的浏览器对于网页的一些默认样式设置可能不一样。比如有的浏览器规定的<a>标签的悬停样式有下划线,而有的又没有。normalize.css就提供了一种适用于各大主流浏览器的默认元素样式,用以统一规范HTML文件在不同浏览器上的默认样式。使HTML文件在不同的浏览器上的默认样式相同,在基于默认样式添加新的样式。
下面额外的讲讲本文讲述可能涉及的问题:
引言:有一定前端经验的人都知道给标签添加样式有这三种方法,一是用style属性直接在标签上添加,二是关联内部样式表,三是外链样式表。
研究问题1:CSS文件调用的优先级,就是这三种添加样式的方法,样式生效的顺序。
验证方法:同时添加三种样式,控制变量法,依次改变,观察样式变化。
验证结果:
标签样式>内联样式>外链样式
研究问题2:多个外链样式表执行顺序
验证方法:就是链接多个样式表,先后调换顺序,从样式的变化判断出浏览器解码调用样式顺序。
验证结果:(其实浏览器通常满足的都是单线程自上而下的解码顺序,由于本人只是认知局限,所以对浏览器的解码顺序描述用了“通常”含糊的词,必当之处,还望指正)
上行样式>下行样式
下载链接: https://necolas.github.io/normalize.css/latest/normalize.css
文章仅个人经验,恭请批评指正