冰川网络营销整体外包平台
服务热线
最新动态
网络学院
八卦相关
DIV布局各浏览器兼容问题解决方法
发布时间:2014-04-04 10:54 | 文章出处:未知 | 点击率:

CSS+DIV由于不同的浏览器解析不一样,所以显示上会有所差异
 DIV布局兼容问题解决方法
 
兼容(ie6、ie7、firefox)口决:
有浮必清,方能兼容;
统一默认,尽量为零;
有高则高,无高而高,
规规整整,方能大成!
 
有浮必清,方能兼容
在使用浮动标签后(float:left),后面div一定要清除浮动(clear:left;)。
这样才能兼容ie6、ie7、ff,否则将出来布局混乱。
示例:
<div style="float:left;width:200px;">1 </div>
<div style="float:right;width:200px;">2 </div>
<div style="clear:left;width:200px;">3 </div>
 
统一默认,尽量为零
不同的浏览器默认值是不一样的。比如:对于ul li标签的margin属性,各不相同。因此,我们在做网站时,先要定义一些全局的样式表,一来约束整站,二来统计默认值。从而达到兼容之目的,这叫“统一默认”,正是“集中思想,统一战线”。
 
<style>
ul,li,body{margin:0px;padding:0px;}
div,table{margin:2px;padding:2px;overflow:hidden;}
</style>
 
尽量为零是指,当我们使用div的时候,尽量明确它们的margin和padding值,不要默认,如果不需要有间距,定义为0。
 
有高则高,无高而高
 
这两点最重点,可谓是经验中的经验。所谓有高则高,就是当你定义div的高度(height)的时候,一定要定义行高(line-height)。这个做法,对兼容ie6、ie7特别重要。
比如: <div style="height:2px"> </div> 这个二像索高的div,在ie6和ie7中是有差别的,加上 <div style="height:2px;line-height:2px;"> </div> 或 <div style="height:2px;overflow:hidden;"> </div>之后,就相同了,这只是一例。
所以有高则高就是,定义了高度,就要定义overflow或者line-height,或者二者都定义,则兼容之。
 
无高而高,如果你想让文字或图片把div撑开,一定不要定义高度;反之,你定义了高度,ie一般可发撑开,但ff是撑不开的。
同时,当你不希望div被掌握开时,你会定义高和宽,此时,你最好再定义一个overflow:hidden; 不加滚动条;overflow:auto;自动。简言之,不对div定义高度,内容可以把div撑开,就是div跟着内容走,故言“无高而高”。

个人小站,感谢支持!1ICP/IP地址/域名信息备案管理系统 |数码新视野 | XML baidunews | 网站地图 | 微信公众平台
&CopyRight 2012-2025, YLYUE.COM, Inc.All Rights Reserved | 备案号: 蒙ICP备2021001009号-1