div+css使用padding样式和!important标记实现Firefox和IE6处理带float样式的margin尺寸上的兼容

原创 2007年09月26日 08:02:00

div+css使用padding样式和!important标记实现Firefox和IE6处理带float样式的margin尺寸上的兼容

[示例代码]

<html>
    <body>
        <div style="width: 300px; float: left; border: 1px solid red; font-size: 12px; clear: both;">
            按照margin的定义,margin中的距离应当是内部元素与外部元素之间的距离,下面的div的尺寸为width; 100px; margin: 100px;,总的宽度应该是width + 2 * margin,也就是300px,在Firefox中的效果正常。
        </div>
        <div style="border: 1px solid blue; float: left; clear: both;">
            <div style="border: 1px solid red; margin: 100px; float: left; width: 100px; height: 100px; font-size: 12px;">
                width: 100px;
                height: 100px;
                margin: 100px;
            </div>
        </div>
        <div style="width: 500px; float: left; border: 1px solid red; clear: both;">
            而在IE6中对于设置了float的元素,margin被重复计算了一次,总的宽度变成了width + 5 * margin,也就是500px。
        </div>
        <div style="clear: both; float: none;">
        </div>
        <div style="float: left; border: 1px solid red; height: 300px; width: 150px;">
            按照margin的定义,margin中的距离应当是内部元素与外部元素之间的距离,下面的div的尺寸为height; 100px; margin: 100px;,总的高度应该是height + 2 * margin,也就是300px,在Firefox中的效果正常。
        </div>
        <div style="border: 1px solid blue; float: left;">
            <div style="border: 1px solid red; margin: 100px; float: left; width: 100px; height: 100px; font-size: 12px;">
                width: 100px;
                height: 100px;
                margin: 100px;
            </div>
        </div>
        <div style="float: left; border: 1px solid red; height: 200px; width: 150px;">
            而在IE6中对于设置了float的元素,margin在下侧被少计算了一次,总的宽度变成了width + 1 * margin,也就是200px。
        </div>
        <div style="clear: both; float: none;">
            借助于padding样式和!important标记,可以实现Firefox与IE6的兼容效果。
        </div>
        <div style="border: 1px solid blue; float: left; clear: both; padding-bottom: 0px !important; padding-bottom: 100px;">
            <div style="border: 1px solid red; float: left; width: 100px; height: 100px; font-size: 12px; margin-top: 100px; margin-bottom: 100px; margin-left: 100px !important; margin-right: 100px !important; margin-left: 50px; margin-right: 50px;">
                width: 100px;
                height: 100px;
                margin: 100px;
            </div>
        </div>
    </body>
</html>

[div+css关键词]

div css

[div+css重要工具]

Internet Explorer Developer Toolbar, http://www.microsoft.com/downloads/details.aspx?FamilyID=e59c3964-672d-4511-bb3e-2d5e1db91038&amp;displaylang=en

[div+css的常见问题]

较验div+css格式,http://validator.w3.org/
div+css的margin缩写方式
div+css的padding缩写方式
链接的:link,:visited,:hover,:active四种状态

[div+css的浏览器兼容问题]

水平居中,Firefox使用margin-left: auto; margin-right: auto; IE6 使用text-align: center;
垂直居中,Firefox中使用display: table-cell; vertical-align: middle;可以实现div垂直居中,而IE6中则需要借助IE6中css的特点实现垂直居中。
!important标记,Firefox支持!important标记,IE6忽略!important标记,!important需要放在前面才能起作用
手形鼠标指针,使用cursor: pointer;
padding的尺寸,在Firefox中padding是计算在width之外的,而IE6是计算在width之内的
margin的尺寸,在IE6中带有float样式的元素的margin尺寸计算有误,需要借助padding和!important标记实现兼容
版权声明:本文为博主(@胡争辉)原创文章,未经博主允许不得转载。

float: right !important

div+css使用padding样式和!important标记实现Firefox和IE6处理带float样式的margin尺寸上的兼容 [示例代码]                     ...
  • neilson123456
  • neilson123456
  • 2013年12月18日 15:04
  • 2301

div+css使用padding样式和!important标记实现Firefox和IE6处理带float样式的margin尺寸上的兼容

div+css使用padding样式和!important标记实现Firefox和IE6处理带float样式的margin尺寸上的兼容 [示例代码]                    ...
  • hu_zhenghui
  • hu_zhenghui
  • 2007年09月26日 08:02
  • 4971

!important是CSS1就定义的语法

CSS企图创造一个平衡作者和用户之间的级层样式表。 默认情况下,CSS规则按级层覆盖,例如在.CSS文件中的定义可以被style标签的定义覆盖,反之则不行。 然而,对覆盖平衡而言,加上一个“!im...
  • wsxsom
  • wsxsom
  • 2014年08月01日 15:56
  • 366

div+css使用!important标记实现Firefox和IE6处理padding尺寸上的兼容

div+css使用!important标记实现Firefox和IE6处理padding尺寸上的兼容 [示例代码]                         在Fi...
  • hu_zhenghui
  • hu_zhenghui
  • 2007年09月25日 07:05
  • 2521

css-内联(行内)元素、块元素、margin、padding

block元素的特点: 总是在新行上开始; 高度,行高以及顶和底边距都可控制; 宽度缺省是它的容器的100%,除非设定一个宽度。, , , , 和 是块元素的例子。 inli...
  • yixiu868
  • yixiu868
  • 2014年11月19日 12:47
  • 1189

CSS中!important的使用

语法 CSS的原理: 我们知道,CSS写在不同的地方有不同的优先级, .css文件中的定义 < 元素style中的属性,但是如果使用!important,事情就会变得不一样。语法: Selector...
  • xiaguangzhiying
  • xiaguangzhiying
  • 2016年03月07日 11:00
  • 613

web兼容性 CSS !important 到 CSS hack

css !important作用是提高指定CSS样式规则的应用优先权。         !important是CSS1就定义的语法,作用是提高指定样式规则的应用优先权。语法格式{ cssRule !...
  • ccfxue
  • ccfxue
  • 2017年07月18日 15:07
  • 394

CSS中IE6、7和火狐对margin、padding的兼容性解析

1、IE与Fire Fox识别CSS属性区别标签 !important #page_body{ width: 1000px !important; height:30px !important;...
  • zhangxiangyu0731
  • zhangxiangyu0731
  • 2012年11月23日 09:15
  • 2117

ie6 ie7 ie8和火狐如何兼容高度宽度以及margin、padding等属性!

ie6 ie7 ie8和火狐如何兼容高度宽度以及margin、padding等属性! Filed Under 互联网 post by dakyi_admin / 2011-8-3 11:39...
  • helen_shw
  • helen_shw
  • 2011年08月21日 10:49
  • 2599

!important的理解

css !important作用是提高指定CSS样式规则的应用优先权。 !important是CSS1就定义的语法,作用是提高指定样式规则的应用优先权。语法格式{ cssRule...
  • u014236541
  • u014236541
  • 2015年11月06日 14:22
  • 525
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章: div+css使用padding样式和!important标记实现Firefox和IE6处理带float样式的margin尺寸上的兼容
举报原因:
原因补充:

(最多只允许输入30个字)