1.什么是CSS hack
因为不一样厂商的流览器或某浏览器的不一样版本(如IE6-IE11,Firefox/Safari/Opera/Chrome等),对CSS的支持、解析不同,致使在不一样浏览器的环境中呈现出不一致的页面展示效果。这时,咱们为了得到统一的页面效果,就须要针对不一样的浏览器或不一样版本写特定的CSS样式,咱们把这个针对不一样的浏览器/不一样版本写相应的CSS code的过程,叫作CSS hack!css
2.CSS hack的原理
因为不一样的浏览器和浏览器各版本对CSS的支持及解析结果不同,以及CSS优先级对浏览器展示效果的影响,咱们能够据此针对不一样的浏览器情景来应用不一样的CSS。html
3.CSS hack分类
CSS Hack大体有3种表现形式:html5
CSS hack书写顺序,通常是将适用范围广、被识别能力强的CSS定义在前面。web
一、<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
这行代码是永远以最新的IE版本模式来显示网页,使IE支持HTML5。
二、<meta name="renderer" content="webkit">
这行代码是360浏览器渲染页面需默认用极速内核
三、只在IE下生效
<!--[if IE]> 这段文字只在IE浏览器显示 <![endif]-->chrome
只在IE6下生效
<!--[if IE 6]> 这段文字只在IE6浏览器显示 <![endif]-->浏览器
只在IE6以上版本生效
<!--[if gte IE 6]> 这段文字只在IE6以上(包括)版本IE浏览器显示 <![endif]-->ui
只在IE8上不生效
<!--[if ! IE 8]> 这段文字在非IE8浏览器显示 <![endif]-->.net
非IE浏览器生效
<!--[if !IE]> 这段文字只在非IE浏览器显示 <![endif]-->firefox
只在IE9如下版本生效
<!--[if lt IE 9]> <script src="http://cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"> <script src="http://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"> <![endif]-->code