饥人谷技术博客

浏览器兼容

2017-08-08  本文已影响0人  _Dot912

什么是 CSS hack

CSS hack是一个编程技术,指根据浏览器的版本、功能来隐藏或显示CSS标记语言。也用来在多个渲染效果不同的浏览器中取得一致的表现。
由于不同的浏览器及相同浏览器不同的版本和标准之间(比如IE6,IE7,Mozilla Firefox等)对CSS行为的解释以及W3C标准的支持不同而导致生成的页面效果不一样,得不到我们所需要的页面效果。 这时我们就需要针对不同的浏览器去写不同的CSS,让它能够同时兼容不同的浏览器,得到我们想要的页面效果。
这个针对不同的浏览器写不同的CSS code的过程,就叫CSS hack。

谈一谈浏览器兼容的思路

  1. 要不要做
    产品的角度(产品的受众、受众的浏览器比例、效果优先还是基本功能优先)
    成本的角度 (有无必要做某件事)

  2. 做到什么程度
    让哪些浏览器支持哪些效果

  3. 如何做

列举5种以上浏览器兼容的写法

Bootstrap (>=ie8)
jQuery 1.~ (>=ie6), jQuery 2.~ (>=ie9)
Vue (>= ie9)
.clearfix::after{
    content: '';
    display: block;
    clear: both;
}
.clearfix{
    /*  仅对IE6/7有效,zoom:1;触发hasLayout,起到类似BFC的效果  */
      *zoom: 1;      
}
.target{
  display: inline-block;
  *display: inline; /*仅对ie67生效*/
  *zoom: 1; /*仅对ie67生效*/
}
<!--[if lt IE 9]>
    <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
    <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<!--[if IE 6]>
<p>You are using Internet Explorer 6.</p>
<![endif]-->
.box{
     color: red;  /*所有浏览器都支持*/
     color:red !important;   ⁄* Firefox、IE7支持 *⁄
     _color: blue; /*ie6支持*/
    *color: pink; /*ie6、7支持*/
     color: yellow\9;  /*ie/edge 6-8*/
}

以下工具/名词是做什么的

一般在哪个网站查询属性兼容性?

Can I use?

参考资料

上一篇 下一篇

猜你喜欢

热点阅读