关于DIV+CSS浮动问题的汇总[增加中]_html/css_WEB-ITnose

WBOY
发布: 2016-06-24 12:30:19
原创
975 人浏览过

1.
解决边距问题,通常可以在不同的div加上border:1px solid #333;属性。由此来查看,是哪个层被撑开了。
-------------------------------------
ie中最常见的会被撑开的问题,是


因为ff的float属性会乱,所以我们在每个带有float属性的层排列最后,会加这么一个层,用来将ff的float属性关闭。
但是这个层放在ie6里就会占据一定的间距。解决方案是:

---------------------------------------------------------------------------------------------------------
2.
应用浮动+margin在IE6会出现双倍距离的现象,注意 只是出现在IE6中,通常这种现象可以用_margin来解决,即针对IE6的hack。
---------------------------------------------------------------------------------------------------------
3.
设置为float的div在ie下设置的margin会加倍。这是一个ie6都存在的bug。解决方案是在这个div里面加上display:inline;
例如:
相应的css为
#IamFloat{ float:left;
margin:5px;/*IE下理解为10px*/ display:inline;/*IE下再理解为5px*/}
也就是加上一句 display:inline就可以。

UL的padding与margin
ul标签在FF中默认是有padding值的,而在IE中只有margin默认有值,所以先定义
ul
{margin:0;padding:0;}
---------------------------------------------------------------------------------------------------------
4.

这样一段代码,如果给  span加上float:right;
这样右浮动的时间会下沉一段距离
解法方案:
给li a加个display:inline-block;float:left;属性;
  li a{display:inline-block;float:left;}
2.把a标签跟span标签直接对调也能解决问题:
 
  • [ 2009年2月18日 ]沧口店-欢乐维客购 共度二月二

  • 原因:标签加上浮动就转为块级元素了
    ---------------------------------------------------------------------------------------------------------
    5.
    对于左浮动的元素,它从最右端出发,向左浮动,知道碰到第一个障碍物,把自己放在它旁边
    ---------------------------------------------------------------------------------------------------------
    6.
    清楚float的方法:
    1,用
    放在有浮动的div或者其他元素后面,即可清除浮动,这样会增加html的冗余代码,不做推荐!
    2,在外层元素里定义css,如下:

        


    css如下:
    .wrapperElem{ overflow:hidden; width:auto;}
    .innerElem{ float:left;}
    这样即可清除innerElem的浮动问题。注意看外层元素的css,如果这里的width去掉的话,会发现在ie6里有问题,如果不写width;加上_height:1%亦可解决
    来源:php.cn
    本站声明
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
    热门教程
    更多>
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板