飞道的博客

CSS 的hack和初始化

417人阅读  评论(0)

提前声明:摘录自数羊战队的前端面试宝典。
 

CSS hack

由于不同厂商的浏览器,或者同一厂商的不同版本的浏览器对css夫人解析不一样,因此导致生成的页面效果不一样,得不到我们所需要的页面效果。这个时候我们就需要针对不同的浏览器去写不同的css,让它能够同时兼容不同的浏览器,能在不同的浏览器中得到我们想要的页面效果。

简单的说就是css hack为了使css代码兼容不同浏览器,当然我们也可以反过来利用css hack为不同版本的浏览器定制编写不同的css效果

书写顺序,一般是将识别能力强的浏览器的CSS写在后面

firefox>all ie>ie8>ie7>ie6>ie9>opera>chrome and safari

技巧:渐进识别方式,从总体中逐渐排除局部

首先使用“\9”这一标记将IE浏览器从所有的情况中分离出来,然后再次使用“+”将IE8,IE7,IE6分离出来,这样IE8已经独立识别了。

 

CSS初始化

引入:不同的浏览器对一些元素有不同的默认样式,不处理时在不同的浏览器下会存在风险,显示差异,甚至布局被打乱(初始化CSS会对搜索引擎造成较小影响),可以用Normalize.css来代替重置样式文件,但它没有重置所有样式风格,仅提供了一套合理的默认样式值,既能让总舵浏览器达到一致和合理的效果,又不扰其他的东西,比如粗体的标题。这一方面。无法做到每个复位重置,也确实有些超过一个重置,他处理了我们永远都不用考虑的怪癖,例如HTML的audio不一致和line-height不一致问题。

 


转载:https://blog.csdn.net/weixin_45264991/article/details/104416211
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场