`
陈修恒
  • 浏览: 204689 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

html 简单CSS hack:区分IE6、IE7、IE8、Firefox、Opera

    博客分类:
  • html
阅读更多

简单CSS hack:区分IE6、IE7、IE8、Firefox、Opera

2008-09-22 10:57

 

方法一:

   跨浏览器的网页设计一直是让人很头疼的问题,这不只是因为浏览器的版本众多,还有一个重要的原因是相同浏览器的不同时期的版本也会有差异,甚至是在不同操作同台上还会有不同。因此使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的文章,相当实用。

区别IE6FF:           background:orange;*background:blue;

区别IE6IE7:          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均不支持下划线。(推荐.我这只有这个有效!)

于是大家还可以这样来区分IE6IE7firefox 
: 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的写在后面。

引自:简单CSS hack:区分IE6、IE7、IE8、Firefox、Opera

 

分享到:
评论

相关推荐

    简单CSShack:区分IE6、IE7、IE8、Firefox、Opera().pdf

    在《简单CSShack:区分IE6、IE7、IE8、Firefox、Opera》中,作者介绍了两种主要的方法来针对这些浏览器进行CSS样式区分。 方法一主要依赖于特殊的CSS选择器来区分浏览器。以下是对四种特殊符号的测试结果: 1. `>`...

    CSS兼容大全IE5,IE5.5,IE6,IE7,Firefox,Opera,Safari等浏览器

    CSS 兼容大全 IE5,IE5.5,IE6,IE7,Firefox,Opera,Safari 等浏览器 CSS 兼容大全是指在不同的浏览器中,例如 IE5,IE5.5,IE6,IE7,Firefox,Opera,Safari 等,如何使网页正常显示的技术。这个技术的核心是 CSS Hack,即...

    IE6/IE7/IE8/Firefox/Chrome/Safari的CSS hack兼容一览表

    "IE6/IE7/IE8/Firefox/Chrome/Safari的CSS hack兼容一览表" 提供了一个宝贵的资源,帮助开发者解决在不同浏览器之间存在的CSS样式差异。下面我们将深入探讨这个话题,了解各种CSS hack及其在这些浏览器中的表现。 ...

    css兼容与差别 IE6,IE7,IE8,FireFox,Opera,Safari.doc

    标题和描述中的文档"css兼容与差别 IE6,IE7,IE8,FireFox,Opera,Safari.doc"主要探讨的是如何解决这些浏览器中的CSS兼容性问题。 1. **浮动(float)**:在示例代码中,我们可以看到针对不同浏览器的浮动样式设置。`...

    CSS hack汇总

    ### CSS Hack 汇总:解决 IE6,IE7,IE8 及 Firefox 的兼容性问题 在网页设计与开发领域,确保不同浏览器间的代码兼容性是一项挑战性的任务,尤其是在处理像 Internet Explorer 6(IE6)、IE7、IE8 和 Firefox 这些...

    ie6、ie7、ie8、ie9、ie10、firefox、google chrome浏览器Hack及兼容性演示页面

    而`IE7`和`IE8`开始逐步改进对CSS和DOM的支持,但仍然存在不少兼容性挑战。`IE9`和`IE10`则进一步提高了标准支持,尤其是`IE10`,开始更接近现代浏览器的标准。 对于`Firefox`,它是基于开源的`Gecko`渲染引擎,这...

    H5 CSS hack 和浏览器内核

    浏览器内核是解析和渲染网页内容的核心组件,常见的有Trident(IE)、Gecko(Firefox)、Webkit(Safari, Chrome)和Blink(Chrome, Opera)。每种内核对CSS的解析方式和对新特性的支持程度都有所不同,导致了CSS ...

    csshack最新的css作品展示

    1. 浏览器兼容性:不同浏览器对CSS的支持程度和解析方式存在差异,如IE、Firefox、Chrome、Safari和Opera等。CSS Hack帮助开发者解决这些差异,确保网站在所有主流浏览器中的表现一致。 2. CSS版本差异:CSS规范...

    css hack div 布局

    接下来,我们看另一个更复杂的例子,区分IE5.5、IE6、IE7以及W3C标准浏览器的CSS hack: ```css .qq { background: #f00; /* w3c */ *background: #00f !important; /* IE7 */ _background: #0f0; /* IE6 */ _...

    CSS Hack 汇总快查

    这个Hack主要针对Firefox(FF)和其他部分浏览器,如Opera。通过`:lang(zh)`选择器定位中文内容,设置字体大小为12像素,并使用`!important`优先级来覆盖其他样式。此Hack仅被Firefox识别,适用于需要特定针对FF进行...

    CSS Hack大全-教你如何区分出IE6-IE10、FireFox、Chrome、Opera

    本文将详细介绍如何区分IE6至IE10、Firefox、Chrome以及Opera这些主流浏览器,并根据它们各自的特性编写相应的CSS Hack代码。 ### IE浏览器的CSS Hack 由于IE浏览器的市场占有率高,且与其他浏览器的CSS兼容性差异...

    web前端规范之CSSHack.pdf

    Webkit阵型则涵盖Firefox、Chrome、Safari和Opera等,它们遵循更现代的CSS标准。 **国内与国外的浏览器使用情况** 在中国,由于历史原因,Windows操作系统和IE浏览器的广泛使用导致大部分用户倾向于使用基于IE内核...

    browser-hack-sass-mixins:浏览器hack sass mixin-将SCSS应用于特定的浏览器-CSS hacks:IE,Chrome,Firefox,Edge,Opera

    在`browser-hack-sass-mixins`项目中,开发者已经预先定义了一系列针对不同浏览器的hack,如Internet Explorer(IE)、Google Chrome、Firefox、Microsoft Edge和Opera。 1. **Internet Explorer(IE)Hacks**: -...

    IE各版本hack汇总

    - **作用解析**:通过将颜色值置于`/*\**/`与`/*\**/`之间,可实现对IE6至IE8以及Firefox、Opera、Safari等浏览器的兼容处理,外部的颜色值将对除IE6之外的所有浏览器生效,而内部的颜色值则仅对IE6有效。...

    针对主流浏览器的CSS-HACK写法及IE常用条件注释

    color/*\**/:#00F/*\**/} /* IE6, IE7, IE8, Firefox, Opera, Safari识别 */ 2. color2 {color:#F00; color/*\**/:#00F/*\9**/} /* IE7, IE8, Firefox, Opera, Safari识别 */ 3. color3 {color:#F00; color/*\**/:#...

    CSS Hack(Safari、Opera、Firefox3和IE7)

    本文将重点介绍针对Safari、Opera、Firefox 3以及IE7的CSS Hack。 1. **仅 Safari 和 Opera 识别的 Hack** Safari 和 Opera 浏览器通常对CSS新特性有较好的支持,但它们在某些方面存在独特的解析方式。可以利用`@...

    CSS_Hack速查表

    - `-moz-`前缀针对Firefox:`.element {-moz-property: value; }` - `-o-`前缀针对Opera:`.element {-o-property: value; }` 3. 选择器Hack:利用某些浏览器不支持的CSS选择器,为这些浏览器编写特定样式,例如...

    常用CSS HACK问题及解决代码.docx

    12. **IE的条件注释Hack**:如`Only IE 6-`仅在IE6中识别,`Only IE 7-`仅在IE7中识别,这些通常用于HTML中的条件注释来导入特定的样式表。 13. **IE8兼容性识别**:`div{height:20px\9;}`,`\9`字符序列在IE8中...

    web前端规范之CSSHack[总结].pdf

    而Webkit阵营则包括Firefox、Chrome、Safari和Opera等,其中Chrome的市场份额已超过IE。 由于中国市场的特殊性,许多国内用户仍然使用IE内核的浏览器,尤其是旧版本。然而,随着技术的发展,一些新版本的国产浏览器...

Global site tag (gtag.js) - Google Analytics