查看: 202|回复: 0

第一阶段清除浮动小结


19-4-12 21:11:38 | [复制链接]

4

主题

35

帖子

192

积分

大虾

Rank: 2

发表于 19-4-12 21:11:38 | 显示全部楼层 |阅读模式
清除浮动的方法
1、使用带clear属性的空元素
在浮动元素后使用一个空元素如<div class="clear"></div>,并在CSS中赋予.clear{clear:both;}属性即可清理浮动。亦可使用<br class="clear" />或<hr class="clear" />来进行清理。
.news { background-color: gray; border: solid 1px black; }.news img { float: left; }.news p { float: right; }.clear { clear: both; }<div class="news"><img src="news-pic.jpg" /><p>some text</p><div class="clear"></div></div>
使用CSS的overflow属性
.news { background-color: gray; border: solid 1px black; overflow: hidden;
*zoom: 1;//兼容IE6 }.news img { float: left; }.news p { float: right; }
使用CSS的:after伪元素
.news { background-color: gray; border: solid 1px black; }.news img { float: left; }.news p{ float: right; }.clearfloat:after{ content: ""; display: block; height: 0; clear: both; visibility: hidden; }<div class="news clearfix"><img src="news-pic.jpg" /><p>some text</p></div>

6 文字和图片在同一行垂直居中问题:
一个关键的属性: margin-bottom 通过修改图片的外边框的底部高度就可以让文字移动上来. 做法是把这个值设置为负数.例如我们把下面的16X15的图片设置它的style="margin-bottom:-3px" 这样文字和图片就居中了。

7.float float下为什么父容器的高度不能自适应
在子容器加了浮动属性后,该容器将不能自动撑开,解决方法是在标签结束后加上一个清除浮动的元素。
1.  clear:both;
2.  样式中加入
.clearfix:after {content:"."; display: block; height: 0; clear: both; visibility: hidden; }
.clearfix {display:inline-block;}
* html .clearfix {height: 1%;}
.clearfix {display: block;}
然后在有浮动的层的外边加入这个clearfix的样式,如下:
<div class="mainbox clearfix">
  <!--float-left为左浮动的样式,float-right为右浮动的样式,这里style我就不再写了-->
  <div class="float-left"></div>
  <div class="float-right"></div>
</div>

visibility特性
用来确定元素是显示还是隐藏,这用visibility="visible|hidden"来表示,visible表示显示,hidden表示隐藏。当visibility被设置为"hidden"的时候,元素虽然被隐藏了,但它仍然占据它原来所在的位置。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

订阅|小黑屋|手机版|千锋教育论坛 ( 京ICP备12003911号-3

GMT+8, 19-12-8 21:24 , Processed in 0.363252 second(s), 44 queries .

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表