CSS关于子元素设置了float属性后父元素高度为0的解释和解决方法_html/css_WEB-ITnose

php中文网
发布: 2016-06-24 11:39:21
原创
1408人浏览过

 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 2 <html lang="en"> 3 <head> 4  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 5  <title>test1</title> 6  <style type="text/css"> 7  #container { 8  background-color: #f1f1f1; 9  width: 80%;10  margin: 20px auto;11  }12  .item {13  float: left;14  color: white;15  text-shadow:0 1px black;16  margin: 10px 20px;17  padding: 20px;18  }19  #container > .item:nth-child(1) {20  background-color: #F00080;21  }22  #container > .item:nth-child(2) {23  background-color: #D8AAD8;24  }25  #container > .item:nth-child(3) {26  background-color: #A2aa5A;27  }28  #container > .item:nth-child(4) {29  background-color: #63B8FF;30  }31  </style>32 </head>33 <body>34 <div id="container">35  <div class="item">36  No.137  </div>38  <div class="item">39  No.240  </div>41  <div class="item">42  No.343  </div>44  <div class="item">45  INo.446  </div>47 </div>48 </body>49 </html>
登录后复制

代码运行结果:


我们发现父元素根本没有高度(审查元素可以看出父元素div#container的高度=0)
分析:
浮动float属性会使得元素脱离当前HTML文档流,那么会使得:当前HTML文档会当作设置float属性的元素不存在一样。那么,由于这5个子元素都设置了float,所以可以看作父元素#container内根本没有内容,div在没内容的时候表现正好是高度=0.
解决方法:

1、设置父元素float
例如:

1 #container {2 background-color: #f1f1f1;3 width: 80%;4 margin: 20px auto;5 float: right;6 } 
登录后复制

2、在最后一个设置浮动的子元素后加一个空div ,并且让这个div清除浮动。

例如:

立即学习前端免费学习笔记(深入)”;

百度AI开放平台
百度AI开放平台

百度提供的综合性AI技术服务平台,汇集了多种AI能力和解决方案

百度AI开放平台 42
查看详情 百度AI开放平台

1 <div class="items"></div>  2 .items {clear: both;}
登录后复制

3、父元素设置overflow:hidden;

4、不要用浮动,而使用:子元素使用display:inline-table或者display:inline-block

 

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号