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

CSS各个浏览器兼容问题

阅读更多

        为了让各浏览器有同样的显示效果,就不能不对CSS做兼容性处理,这时我们就会用到CSS HACK。当然在这篇文章中我们只谈现在使用率最高的IE6、IE7、IE8和FF,至于IE6以下版本已OP、SF在这此先不详细说明。新手看了这片文章一定会有所收获,而高手们路过一下就可以了

 

1、可进行浏览器兼容性重复定义 

 

        首先来看一下示例:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>一个CSS兼容性问题的示例</title>
<style type="text/css">
.test{
width:500px;
height:200px;
background-color:orange; /*IE6、IE7、IE8和FF支持*/
*background-color:blue;  /*IE7支持*/
_background-color:red;   /*IE6支持*/
}
</style>
</head>
<body>
<div class="test"></div>
</body>
</html>

 

        在看看效果:


这是在IE6中的效果
 

这是在IE7中的效果
 

这是在IE8和FF中的效果
 

        为什么会这样呢?我解释一下,首先background-color:orange;IE6、IE7、IE8和FF都支持,但是由于程序运行时按照顺序执行,后面设置的属性会覆盖前面的属性,后面两个*background-color:blue; 和_background-color:red;可是IE6不支持“*”号只支持“-”号,所以IE6最终读取的_background-color:red;。

 

       同样的道理,IE7能够识别“*”号,但是不能识别“-”号,所以在IE7下运行的效果是*background-color:blue;IE8和FF“*”号和“-”号都不能识别所以最终读取为background-color:orange;

 

2、几个浏览器对实际像素的解释

 

        IE/Opera:对象的实际宽度 = (margin-left) + width + (margin-right)

        Firefox/Mozilla:对象的实际宽度= (margin-left) + (border-left-width) + (padding- left) + width + (padding-right) + (border-right-width) + (margin-right)

 

3、鼠标手势问题

 

        FireFox的cursor属性不支持hand,但是支持pointer,IE两个都支持;所以为了兼容都用pointer

 

4、单位的问题

 

        FireFox中设置HTML标签的Style属性时,所有位置、宽高和尺寸值必须后跟px,IE也支持此写法,因此统一加px单位

 

5、消除ul、ol等列表的缩进

 

        消除ul、ol等列表的缩进时,样式应写成:list-style:none;margin:0px;padding:0px;其中margin属性对IE有效,padding属性对FireFox有效

 

6、超链接的CSS样式设置

 

        对超链接的CSS样式设置最好遵从这样的顺序:L-V-H-A。即

        <style type="text/css">
        <!--
        a:link {}
        a:visited {}
        a:hover {}
        a:active {}
        -->
        </style>

        这样可以避免一些访问过后的超链接就不具备hover和active样式了

 

7、浮动后IE6解释外边距为实际边距的双倍

 

        解决办法:加上display:inline

 

8、自动撑开

 

        支持WEB标准的浏览器设置了固定高度值就不会像IE6那样被撑开,但是又想设置固定高度又想能够被撑开呢?解决办法是去掉height属性而设置min-height,为了兼容不支持min-height的IE6可以这样定义:

        {

        height:auto!important;

        height:200px;

        min-height:200px;

        }

 

9、IE6由于默认行高问题无法定义1px左右高度的容器

 

        解决办法:在CSS中对容器设置如:overflow:hidden | zoom:0.08 | line-height:1px

 

分享到:
评论

相关推荐

    CSS浏览器兼容问题

    CSS浏览器兼容问题,解决各个浏览器中css不兼容的问题。

    css样式兼容不同浏览器的问题

    本文档介绍了常见的浏览器兼容问题,包括css样式在各个浏览器上如何处理

    CSS浏览器兼容性问题(IE6,IE7,IE8和Fixfox)

    主要关于各个浏览器的兼容问题,主要针对IE6、IE7、IE8和Fixfox浏览器

    CSS属性兼容性对照表

    资源名称:CSS 属性兼容性对照表内容简介: CSS属性兼容性对照表 PDF,主要是列出一些CSS2.0/CSS2.1在各个版本的IE、火狐等主流浏览器下的兼容支持问题,此表有助于以后书写出全兼容的WEB标准化网页打下基础,前端...

    《别具光芒CSS.属性、浏览器兼容与网页布局》 PDF

    本书内容由浅入深,不仅介绍了Web标准和层叠样式表的各个属性,还结合实例对属性的实际应用进行讲解,同时配合在不同浏览器内的效果展示,针对读者实际制作中可能遇到的问题,提供了解决问题的思路和方法。...

    CSS3中的Opacity多浏览器透明度兼容性问题

    不过各个浏览器都有自己的私有属性来支持,其中包括老版本的Mozilla和Safari: IE: filter:alpha(opacity) Mozilla: -moz-opacity Safari: -khtml-opacity 很不幸的是,你没看见Opera,老版本的Opera并没有什么私有...

    小数在各个浏览器的差异及css用小数解析差异解决浏览器兼容性问题

    通常我们写 css 的时候写的数字都是整数,如 font-size:12px; margin:20px; 那么看到标题可能有人会问,css 属性值可以有小数点么,首先我们先看个例子,通过例子来观察下小数在各个浏览器的差异

    CSS hack大全之特殊符号的应用解决浏览器兼容性问题

    由于各大浏览器尤其IE浏览器对web标准支持情况不一,导致标准的网页在各个浏览器中的表现不一,因此,解决各浏览器兼容性问题成为了前端工程师最重要的工作之一,而所谓的hack技术则是前端开发中必用的。 CSS hack...

    CSS 兼容性问题详解大全

    关于css 对各个浏览器的兼容性 做出分析; 提供代码示例; 适合编程爱好者学习; 加深对网站布局css 的理解和应用

    jQuery浏览器CSS3特写兼容实例

    本文实例讲述了jQuery浏览器CSS3特写兼容的方法。分享给大家供大家参考...各个浏览器都未对其做更好的标准支持。 jQuery通过预先的javascript编程,提供了几乎所有css3标准下的选择器。开发者可以利用这些选择器轻松选

    jQuery学习笔记之jQuery+CSS3的浏览器兼容性

    正是因为浏览器对css3的兼容性问题。各个浏览器都未对其做更好的标准支持。 jQuery通过预先的javascript编程,提供了几乎所有css3标准下的选择器。开发者可以利用这些选择器轻松选择各种元素。供javascript编程使用...

    多浏览器测试工具 spoon

    做web前端工作的人员,需要测试页面在各个浏览器不同版本上的CSS或JS效果,如IE下要测试:IE6、IE7、IE8中的效果;但是各个浏览器只能在一台机器上面安装一个版本或升级到更高版本,这就给测试工作带来了很大的麻烦...

    javascript 开发之网页兼容各种浏览器

    关于CSS对各个浏览器兼容已经是老生常谈的问题了, 网络上的教程遍地都是.以下内容没有太多新颖, 纯属个人总结, 希望能对初学者有一定的帮助. 一、CSS HACK 以下两种方法几乎能解决现今所有HACK. 1, !important 随着...

    浏览器对于含小数值px(像素)解析的差异及小数值如何解决兼容性问题

    所以后来,苦心研究如何无hack实现各个浏览器兼容性俱佳,最核心的就是布局方式,宜采用流动性布局,亦称自适应布局,我自己总结为三无原则:无浮动,无高度,无宽度。神似于武侠里的无招胜有招,忘记招式才是最高...

    css 兼容性书写记录

    从页面开始布局设计初就考虑到各个浏览器的问题,留出充足的余量和给各个浏览器留出充足的发挥空间,这样的页面兼容性才是最好的。 下面就来几个问题: 1、div border不能显示 问题描述:用一个div A层中间放了几个...

    重置浏览器默认样式

    不同的浏览器对CSS的兼容问题在学习及运用过程中占到了绝大部分。作为一个闭门造车的学鸟~偶是一路google+baidu过来的,虽然到现在还是鸟~但还是要慢慢总结。 为了尽可能从开始就减少问题的产生,鸟们需要在开始写...

    使用div+css开发个人网站毕业设计.doc

    10 三、实现结构与表现分离 11 第六节 div+css的兼容性问题 11 一、div的垂直居中问题 11 二、margin加倍的问题 11 三、浮动ie产生的双倍距离 11 四、IE与宽度和高度的问题 11 五、页面的最小宽度 12 六、DIV浮动IE...

    css2.0语法手册

    css的各种属性和值,让许多做了多年的网页开发人员都难以准确的记忆。特别是各个属性在各浏览器中的兼容性问题。本手册刚好可以速度查询css2.0中各种属性和值的实际作用。

Global site tag (gtag.js) - Google Analytics