Hack技术

CSS Hack来解决浏览器局部的兼容性问题,hack主要针对IE浏览器
常见的有三种形式:css属性Hack,css选择符HACK以及IE条件注释Hack,

1.属性级Hack

    比如IE6能识别下划线”_”和星号” * “,IE7能识别星号” * “,但不能识别
    下    划线”_”,而firefox两个都不能认识。

2.选择符级Hack:

    比如IE6能识别*html .class{},IE7能识别*+html .class{}或者*:first-
  child+html .class{}。

3.IE条件注释Hack:

IE条件注释是微软从IE5开始就提供的一种非标准逻辑语句。比如针对
    所有IE:<!–[if IE]><!–您的代码–><![endif]–>,针对IE6及以下版本:
    <!–[if lt IE 7]><!–您的代码–><![endif]–>,这类Hack不仅对CSS生效,
    对写在判断语句里面的所有代码都 会生效。

条件注释只有在IE浏览器下才能执行,这个代码在非IE浏览下被当做注释视而不见。可以通过IE条件注释载入不同的CSS、JS、HTML和服务器代码等。

![<![endif]—>
/* CSS属性级Hack /
color:red; /
所有浏览器可识别/
_color:red; /
仅IE6 识别 /
color:red; / IE6、IE7 识别 /
+color:red; /
IE6、IE7 识别 /
+color:red; / IE6、IE7 识别 /
[color:red; /
IE6、IE7 识别 /
color:red9; /
IE6、IE7、IE8、IE9 识别 /
color:red; /
IE8、IE9 识别
/
color:red9; /
仅IE9识别 /
color:red ; /
仅IE9识别 /
color:red!important; /
IE6 不识别!important/
-------------------------------------------------------------
/
CSS选择符级Hack */
html #demo { color:red;} / 仅IE6 识别 */
+html #demo { color:red;} / 仅IE7 识别 /
body:nth-of-type(1) #demo { color:red;} /
IE9+、FF3.5+、Chrome、Safari、Opera 可以识别 /
head:first-child+body #demo { color:red; } /
IE7+、FF、Chrome、Safari、Opera 可以识别 /
:root #demo { color:red9; } : /
仅IE9识别 /
--------------------------------------------------------------
/
IE条件注释Hack */








](https://upload-images.jianshu.io/upload_images/13336975-d9cb1a450fda9410.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Hacker:黑客CSS Hack:据此而来,通过浏览器解析漏洞从而衍生的兼容性调节技术 Hack概念 不同的浏览...
    风之帆阅读 722评论 1 2
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,816评论 1 45
  • 做前端多年,虽然不是经常需要hack,但是我们经常会遇到各浏览器表现不一致的情况。基于此,某些情况我们会极不情愿的...
    大女表哥阅读 1,133评论 0 9
  • 用到的网站浏览器市场份额caniuse.com 查CSS属性兼容browserhacks 查 Hack 的写法 1...
    湖衣阅读 435评论 0 0
  • 一、如何调试 IE 浏览器? 在IE7以上的版本中可以通过按快捷键F12调出开发人员调试框,如下图IE7以上调试工...
    dengpan阅读 570评论 0 2