下面可以乘凉的不一定是大树,但大树底下一定是可以乘凉的。
RSS icon
  • 

    简单的全系列浏览器css hack

    发表于 三月 1st, 2010 大树 没人乘凉

    方法一:

      跨浏览器的网页设计一直是让人很头疼的问题,这不只是因为浏览器的版本众多,还有一个重要的原因是相同浏览器的不同时期的版本也会有差异,甚至是在不同操作同台上还会有不同。因此使CSS hack技术进行浏览器区分是实现跨浏览器访问一个好方法。CSS Hack技术有很多,具体可以查看:
      本文据说的主要是通过“.”,“>”,“*”,“_”来区分。以下是本人对这四种符号的测试结果:
    ———————IE6——    IE7——IE8——FF2——FF3—    Opera9.5
    >property——    Y——    Y——    Y——    N——    N——    N
    .property——    Y——    Y——    Y——    N——    N——    N
    *property——    Y——    Y——    Y——    N——    N——    N
    _property——    Y——    N——    N——    N——    N——    N
    我们可以看到>property、.property、*property在各浏览器中的表现是一致的,只有_property在IE6和IE7、 IE8中有所区别。另外还要注意的,IE6是不支持!important的,而其他几款浏览器都识别。
    举例:
    要对想同的文字在不同浏览器中显示不同的颜色可以使用:

    color:brown !important;  /*用于Opera、Firefox2、Firefox3等现代浏览器*/

    1. >color:green !important;    /*IE7、IE8可以识别该规则,因此它覆盖掉了上一条规则*/
    2. color:red;  /*所有浏览器都可以识别,但是以上两条规则有!important,所以这条规则被忽视;只有IE6认识并覆盖掉上两条规则*/
    color:brown !important;  /*用于Opera、Firefox2、Firefox3等现代浏览器*/
    >color:green !important;    /*IE7、IE8可以识别该规则,因此它覆盖掉了上一条规则*/
    color:red;  /*所有浏览器都可以识别,但是以上两条规则有!important,所以这条规则被忽视;只有IE6认识并覆盖掉上两条规则*/

    因此这就实现了跨浏览器的表现问题。_property和*property也是一样的。对于_property来说,只有IE6才能识别,因此可以用于单独对IE6的设置中。

    不过这里要注意书写的顺序:现在浏览器的写法要写在最前面,IE6的写法要写在最后面用于覆盖,其他浏览器写在中间。

    方法二:

    其实主要是浏览器:IE6/IE7/firefox下,各个对CSS代码的解释有区别,下边转载一篇HACK的文章,相当实用。

    区别IE6与FF:           background:orange;*background:blue;

    区别IE6与IE7:          background:green !important;background:blue;

    区别IE7与FF:           background:orange; *background:green;

    区别FF/IE7/IE6:       background:orange;*background:green !important;*background:blue;

    注:IE都能识别*标准浏览器(如FF)不能识别*

    IE6能识别*,但不能识别 !important

    IE7能识别*,也能识别!important

    FF不能识别*,但能识别!important

    另外再补充一个,下划线"_",

    IE6支持下划线,IE7和firefox均不支持下划线。(推荐.我这只有这个有效!)

    于是大家还可以这样来区分IE6、IE7、firefox

    : background:orange;*background:green;_background:blue;

    * html  p {color:#f00;}            支持 IE6        不支持FF IE7 IE8b

    *+html p {color:#f00;}            支持 IE7 IE8b        不支持FF IE6

    p {*color:#f00;}            支持 IE7 IE6        不支持FF IE8

    注:不管是什么方法,书写的顺序都是firefox的写在前面,IE7的写在中间,IE6的写在后面。

    您来到小站很多次了哦,喜欢的话,不妨订阅我吧·!

    相关文章:

    1. 【转载】编程的首要原则是什么 半年前,JoelOnSoftware和CodingHorror合搞的stackoverflow.com刚上线不久,我兴冲冲地跑过去扔了一个问题: 你们认为编程的首要原则是什么? 5个月过去了,这个问题到现在还有人回复,我得到了一大堆有意思的答案,忍不住翻译过来与大家分享:...
    2. 让Google工具栏书签同步不被重置 可能不少人都安装了Google工具栏,但是经常会遇到这样的情况:书签加载失败、登录状态变黄色、按钮设置不能同步。 还有更糟的情况,如果你在Google.com搜索某些关键词被重置了,那么接下来几分钟你的Google书签就不能下载成功,会一起被重置。网上曾出现过改hosts的方法,但那样并不保险,最好的方法是让http变成https。...
    3. C#和C++混合编程的一些tips 最近帮朋友写个小东西的时候,刚好用到了C#和C++的混合编程,记录一些tips供日后参考。 首先说明下环境:C#调用C++的库函数,C++建立一个非托管类库项目,C#项目引用之。...
    4. 腾讯推出云输入法 5月8日消息,继百度爆出将推出PC版输入法后,腾讯日前悄然推出了QQWeb输入法,不需要客户端,浏览器在线即可使用。这是继搜狗云输入法之后,又一个基于网络的云输入法。...
    5. 植物大战春哥 想必很多人都玩过大名鼎鼎的《植物大战僵尸》,不过我猜当中大多数都没有玩过这款《植物大战春哥》。虽然只是更换了贴图,但我看到春哥的脸还是忍不住有玩的冲动。但是,这种游戏,真的可以通关吗?...

    

    乘凉说话