常用的css hack简单写法与兼容性介绍

区别不同浏览器的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 FF
* √ √ ×
!important × √ √

------------------------------------------------------
另外再补充一个,下划线"_",
IE6支持下划线,IE7和firefox均不支持下划线。

  IE6 IE7 FF
* √ √ ×
!important × √ √
_ √ × ×

 

于是大家还可以这样来区分IE6,IE7,firefox
: background:orange;*background:green;_background:blue;

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

实例

 

 代码如下 复制代码

<!DOCTYPE html> 

<html> 

<head> 

    <title>Css Hack</title> 

    <style> 

    #test  

    {  

        width:300px;  

        height:300px;  

         

        background-color:blue;      /*firefox*/

        background-color:red9;      /*all ie*/

        background-color:yellow;    /*ie8*/

        +background-color:pink;        /*ie7*/

        _background-color:orange;       /*ie6*/

    } 

    :root #test { background-color:purple9; }  /*ie9*/

    @media all and (min-width:0px){ #test {background-color:black;} }  /*opera*/

    @media screen and (-webkit-min-device-pixel-ratio:0){ #test {background-color:gray;} }  /*chrome and safari*/

    </style> 

</head> 

<body> 

    <div id="test">test</div> 

</body> 

</html>

上面这段代码大家可以直接copy出来,保存成html在各浏览器试试。下面我来分析下:
    background-color:blue; 各个浏览器都认识,这里给firefox用;
    background-color:red9;9所有的ie浏览器可识别;
    background-color:yellow; 是留给ie8的,但笔者测试,发现最新版opera也认识,汗。。。不过且慢,后面自有hack写了给opera认的,所以,我们就认为是给ie8留的;
    +background-color:pink; + ie7定了;
    _background-color:orange; _专门留给神奇的ie6;
    :root #test { background-color:purple9; } :root是给ie9的,网上流传了个版本是 :root #test { background-color:purple;},呃。。。这个。。。,新版opera也认识,所以经笔者反复验证最终ie9特有的为:root 选择符 {属性9;}
    @media all and (min-width:0px){ #test {background-color:black;} } 这个是老是跟ie抢着认的神奇的opera,必须加个,不然firefox,chrome,safari也都认识。。。
    @media screen and (-webkit-min-device-pixel-ratio:0){ #test {background-color:gray;} }最后这个是浏览器新贵chrome和safari的。

下面再看一些常用的

.all-IE{property:value9;}
:root .IE-9{property:value/;}
.gte-IE-8{property:value;}
.lte-IE-7{*property:value;}
.IE-7{+property:value;}
.IE-6{_property:value;}
.not-IE{property//:value;}
@-moz-document url-prefix() { .firefox{property:value;} }
@media all and (-webkit-min-device-pixel-ratio:0) { .webkit{property:value;} }
@media all and (-webkit-min-device-pixel-ratio:10000),not all and (-webkit-min-device-pixel-ratio:0) { .opera{property:value;} }
@media screen and (max-device-width: 480px) { .iphone-or-mobile-s-webkit{property:value;} }

IE8 最新css hack:   "9" 例:"border:1px 9;".这里的"9"可以区别所有IE和FireFox.   "" IE8识别,IE6、IE7不能.   "*" IE6、IE7可以识别.IE8、FireFox不能.   "_" IE6可以识别"_",IE7、IE8、FireFox不能.  
IE6 hack
  _background-color:#CDCDCD; /* ie 6*/
IE7 hack
  *background-color:#dddd00; /* ie 7*/
IE8 hack
  background-color:red ; /* ie 8/9*/
IE9 hack
  background-color:blue 9;

时间: 2024-10-10 22:44:09

常用的css hack简单写法与兼容性介绍的相关文章

IE6,IE7等其它IE和firfox等标准浏览器css hack简单兼容方

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  <html lang="ru">  <head>  <title></title>  <style type="text/css">  .test 

CSS Hack技术介绍及常用的Hack技巧集锦

 一.什么是CSS Hack? 不同的浏览器对CSS的解析结果是不同的,因此会导致相同的CSS输出的页面效果不同,这就需要CSS Hack来解决浏览器局部的兼容性问题.而这个针对不同的浏览器写不同的CSS 代码的过程,就叫CSS Hack. CSS Hack常见的有三种形式:CSS属性Hack.CSS选择符Hack以及IE条件注释Hack, Hack主要针对IE浏览器. 1.属性级Hack:比如IE6能识别下划线"_"和星号" * ",IE7能识别星号"

探究针对GoogleChrome的CSS hack写法

本节和大家一起学习一下针对GoogleChrome谷歌浏览器的CSS hack的使用,CSS hack是因为现有浏览器对标准的解析不同,为了兼容各浏览器,所采用的一种补救方法:也有人说CSS hack是一种类似作弊的手段,以欺骗浏览器的方式达到兼容的目的,是用浏览器的兼容性差异来解决浏览器的兼容性问题. CSS hack简介 CSS hack是因为现有浏览器对标准的解析不同,为了兼容各浏览器,所采用的一种补救方法. CSS hack是一种类似作弊的手段,以欺骗浏览器的方式达到兼容的目的,是用浏览

CSS Hack大全-教你如何区分出IE6-IE10、FireFox、Chrome、Opera_经验交流

现在的浏览器IE6-IE10.Firefox.Chrome.Opera.Safari...数量众多,可谓百家争鸣,对用户来说有了很多的可选择型,不过这可就苦了Web前端开发人员了.今天把一些常用的CSS Hack整理了一下,包括常用的IE hack以及火狐.Chrome.Opera浏览器的Hack,并把这些CSS Hack综合的一起,写了一个小的浏览器测试器.如图所示: 下面就来看一下代码吧: html部分: 复制代码 代码如下: <div class="content">

CSS Hack解决浏览器兼容性问题

网页设计遇到最大的麻烦之一莫过于网页对不同浏览器的兼容性问题了,因为IE 6.0 / IE 7.0 / firefox 2 / Opera 9等主流浏览器对CSS解析不近相同,导致设计的页面效果不一样,所以用什么方法可以有效解决不同浏览器不同页面效果的问题呢?广泛被使用的方法就是CSS Hack,即使用特别的CSS定义显示网页在不同浏览器的设计风格,针对不同的浏览器去写不同的CSS,最大化兼容浏览器. 一般情况下,我都会兼顾IE 6.0 / IE 7.0 / firefox 2.0浏览器,下面是

CSS常用的几个简单效果

最近翻阅网上资料,查到了一些自己从未用过的CSS,于是记录下来,在有些时候兴许能用得上. 1.CSS中简单的运算 我们通常用css指定的是静态的结果,而动态结果,如高度,位置等等则需要js来动态进行计算赋值,而其实css自己也能够进行简单的运算,主要是用到了calc这个函数. .div{ width: calc(100% - 50px); } 2.使用CSS实现文字模糊效果 在PS中我们可以使用滤镜让面前的文字看起来很模糊,这和透明度还不一样,在css中我们也可以实现. p{ color: tr

CSS HACK:IE6、IE7、IE8、Firefox兼容性问题解决

1.区别IE和非IE浏览器 #tip { background:blue; /*非IE 背景藍色*/ background:red 9; /*IE6.IE7.IE8背景紅色*/ } 2.区别IE6,IE7,IE8,FF [区别符号]:「9」.「*」.「_」 [示例]: #tip { background:blue; /*Firefox 背景变蓝色*/ background:red 9; /*IE8 背景变红色*/ *background:black; /*IE7 背景变黑色*/ _backgro

CSS Hack和向后兼容的常见问题

人一旦习惯了某些东西就很难去改,以及各种各样的原因,新的浏览器越来越多,而老的总淘汰不了.增长总是快于消亡导致了浏览器兼容是成了谈不完的话题.说 到浏览器兼容,CSS HACK自然而然地被我们想起.今天,我们通常都有一个团队或者将有一个团队的人在一个公司里面做相同的事,需要我们有统一的规范来进行Coding,以 方便维护.而解决兼容的方法就是(必须是,因为这才最容易有问题的)其中一个最重要的.要解决的规范之一. 在解决兼容方法上,想定出一个统一的规范,个人认为应该以下面3点为基本原则: 权衡成本

实例解析一款针对IE6的CSS hack用法

本文通过实例向大家描述一下IE6的CSS hack用法,我们以一个LOGO为实例,讲解了针对IE6,应用CSS HACK设置有别于IE7和FF的效果.具体内容请看本文详细介绍,相信本文介绍一定会让你有所收获. 一款针对IE6的CSS hack用法实例 CSS网页布局的兼容性问题一直困扰着大家,其实在51cto.com以前的文章中也有着丰富的CSS HACK与CSS兼容性的文章,只是有些文章可能讲的比较抽象而没有实例化,不便于大家的理解. 现在要讲解的是一个关于IE6的CSS HACK的用法.我们