css对于float返回文本流的做法

在设计中常常会遇到这样的问题:
当容器内部有float样式时,容器的高度不会被撑开。

下面介绍两种方法解决上面的问题

第一种:在浮动元素后面加一个clear: both;比较常见的方法。

<style type="text/css">
.left{float:left;}
.right{float:right;}
.clear{clear:both;}
</style>
<div>
<div class="left">
</div>
<div class="right">
</div>
<div class="clear">
</div>
</div>

缺点:兼容性不强,IE6下div.clear会有高度,需要height:0,overflow:hidden来解决;页面有冗余代码。
第二种方法:clearfix;最完美的解决方法。

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
 
.clearfix {
	display: inline-block;
}
 
html[xmlns] .clearfix {
	display: block;
}
 
* html .clearfix {
	height: 1%;
}

或者

.clearfix{
    zoom:1
}
.clearfix:before,.clearfix:after{
    content:'\0020';
    display:block;
    overflow:hidden;
    visibility:hidden;
    width:0;
    height:0
}
.clearfix:after{
    clear:both
}

用法:在浮动外的容器上加一个clearfix类。

<div class="clearfix">
    <div class="left">
    </div>
    <div class="right">
    </div>
</div>

或者

<div class="panel clearfix">
    内容···
</div>


转载于:https://my.oschina.net/u/1402334/blog/296441

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值