解决子级用css float浮动 而父级div没高度不能自适应高度

解决子级对象使用css float浮动 而父级div不能自适应高度,不能被父级内容撑开解决方法,父级div没有高度解决方法。

最外层的父级DIV不能自适应高度-不能随对象撑开没有高度

当在对象内的盒子使用了float后,导致对象本身不能被撑开自适应高度,这个是由于浮动产生原因。

如何解决父div对象自适应高度,方法有三种,接下来DIVCSS5逐一介绍。

1、首先我们先看HTML源代码

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>父div不自适应高度实例</title>
  6. <style>
  7. .divcss5{ width:500px; border:1px solid #000; padding:10px}
  8. .divcss5-lf{ float:left; width:220px; height:100px; background:#000}
  9. .divcss5-rt{ float:right; width:230px; height:100px; background:#06F}
  10. </style>
  11. </head>
  12. <body>
  13. <div class="divcss5">
  14. <div class="divcss5-lf"></div>
  15. <div class="divcss5-rt"></div>
  16. </div>
  17. </body>
  18. </html>

2、问题效果截图:

子对象使用float后,父div不能自适应高度实例截图

方法一:对父级设置固定高度   -   TOP

此方法可用于能确定父级div内子级对象高度。

假如以上案例,我们知道内部div高度100px,那对父级设置css height为100px看看效果。

1、完整div+css实例html代码(对父div加高度):

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>父div不自适应高度实例</title>
  6. <style>
  7. .divcss5{width:500px;border:1px solid #000;padding:10px; height:100px}
  8. .divcss5-lf{ float:left; width:220px; height:100px; background:#000}
  9. .divcss5-rt{ float:right; width:230px; height:100px; background:#06F}
  10. </style>
  11. </head>
  12. <body>
  13. <div class="divcss5">
  14. <div class="divcss5-lf"></div>
  15. <div class="divcss5-rt"></div>
  16. </div>
  17. </body>
  18. </html>

2、加高度解决不能撑开子对象使用float效果截图

对父加高度100px 解决外层父div自适应高度截图

此方法缺点,父级是固定高度,而不随内容高度自适应高度,没高度。此方法针对能确定父div内的内容高度情况下使用。

方法二:使用css clear清除浮动   -   TOP

对父级div标签闭合</div>前加一个clear清除浮动对象。

1、加clear效果完整div css代码

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>父div不自适应高度实例</title>
  6. <style>
  7. .divcss5{width:500px;border:1px solid #000;padding:10px}
  8. .divcss5-lf{ float:left; width:220px; height:100px; background:#000}
  9. .divcss5-rt{ float:right; width:230px; height:100px; background:#06F}
  10. .clear{ clear:both}
  11. </style>
  12. </head>
  13. <body>
  14. <div class="divcss5">
  15. <div class="divcss5-lf"></div>
  16. <div class="divcss5-rt"></div>
  17. <div class="clear"></div>
  18. </div>
  19. </body>
  20. </html>

2、加css clear解决父div不能自适应高度

使用clear:both清除父级内子对象产生浮动

此方法需要注意是clear:both加的位置,不是对父级直接加clear样式,而是在父级</div>前加带clear对象盒子。

方法三:对父级样式加overflow样式   -   TOP

此方法非常简单,也可以作为推荐解决父级不能被撑开自适应高度的方法,可以不增加div盒子对象,只需要对父级加一个overflow:hidden样式即可。

1、完整css div代码

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>父div不自适应高度实例</title>
  6. <style>
  7. .divcss5{width:500px;border:1px solid #000;padding:10px; overflow:hidden }
  8. .divcss5-lf{ float:left; width:220px; height:100px; background:#000}
  9. .divcss5-rt{ float:right; width:230px; height:100px; background:#06F}
  10. </style>
  11. </head>
  12. <body>
  13. <div class="divcss5">
  14. <div class="divcss5-lf"></div>
  15. <div class="divcss5-rt"></div>
  16. </div>
  17. </body>
  18. </html>

2、加css overflow方法截图

 父div加overflow样式解决父自适应高度

推荐。此方法为非常简单解决子用float,父div不能自适应高度,不能随父内容多少而自适应高度没有高度。

源文:http://www.divcss5.com/jiqiao/j612.shtml

时间: 2024-10-11 06:42:39

解决子级用css float浮动 而父级div没高度不能自适应高度的相关文章

子级用css float浮动 而父级div没高度不能自适应高度

子级对象使用css float浮动 而父级div不能自适应高度. 对父级div标签闭合</div>前加一个clear清除浮动对象. <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>父div不自适应高度实例</title> <style> .divcss5{width:500px;border:1px solid #0

CSS清除浮动使父级元素展开的三个方法

点评:一个没有设置高度的容器div内如果存在浮动元素(即使用了属性float:left或者float:right),那么该父级元素会无法展开,下面举个例子为大家详细介绍下,希望对大家有所帮助 一个没有设置高度的容器div内如果存在浮动元素(即使用了属性float:left或者float:right),那么该父级元素会无法展开. 举个例子,有一个div容器,div容器里有两个小容器,分别向左和向右浮动,为了区别这三个容器,分别设置了不同颜色的边框. 复制代码 代码如下: <html> <h

CSS float浮动的深入研究、详解及拓展

CSS float浮动的深入研究.详解及拓展(一) by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=583 一.浮动的原始意义是什么? 浮动出现的意义其实只是用来让文字环绕图片而已,仅此而已.而我们目前用浮动实现页面布局本不是浮动该干的事情. 二.浮动的本质是什么? 我将浮动的本质定义为“包裹与破坏”! 1. 浮动的“包裹性”撇开浮动的“破坏性”,浮动就是个带有方位的d

CSS Float(浮动):使元素向左或向右移动,其周围的元素也会重新排列

CSS Float(浮动) 什么是 CSS Float(浮动)? CSS 的 Float(浮动),会使元素向左或向右移动,其周围的元素也会重新排列. Float(浮动),往往是用于图像,但它在布局时一样非常有用. 元素怎样浮动 元素的水平方向浮动,意味着元素只能左右移动而不能上下移动. 一个浮动元素会尽量向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止. 浮动元素之后的元素将围绕它. 浮动元素之前的元素将不会受到影响. 如果图像是右浮动,下面的文本流将环绕在它左边: 实例 img

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

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&q

css float 浮动是个混球

得说,在学习 CSS 的时候就一直在疑惑,横排布局干嘛要用 float 这种属性, 用了还会高度塌陷,怎么不发明些高级点的属性来完成横排布局呢, 甚至所有人都告诉我摒弃表格布局,浮动布局才是 DIV+CSS 时代的产物. 以前我是没得选,现在想想,都过去这么多年了,也许我应该回去看看. 其实当时制定 CSS 的人也许根本就没想过会用 float 来布局,最多来个 word 的那种文本环绕就不错了, 或者说布局本来不是 float 的本职工作,你听过建房子有可能用左右浮动这种办法的吗... 即便如

css float浮动清除

1.标准文档流下的div的显示特点 现有3个div,父级div命名为:divmain,同级子div分别命名为:div-left,div-right. 当我们不使用div浮动的时候,正常文档流(normal document)情况下,代码及显示效果如下所示: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 5 <meta charset="UTF-8"> 6 <tit

CSS float浮动的深入研究、详解及拓展(二)

接上回- 五.浮动的非本职工作 浮动的本职工作是让匿名inline boxes性质的文字环绕图片显示,而其他所有用浮动实现的效果都不是浮动应该做的事情,我称之为"非本职工作". 或许我们并没有过多的深思,把一些实际上不是浮动该干的事情当作"这必须用浮动来实现".举个常见的例子,列表显示,见下面的图,截自淘宝新版首页: > 张鑫旭-鑫空间-鑫生活" alt="淘宝热卖单品截图 >> 张鑫旭-鑫空间-鑫生活" src=&q

CSS float浮动的深入研究、详解及拓展(一)

概念目录 个人感悟之CSS代码的情感化思维 个人观点之浮动的意义仅仅是文字环绕显示而已 个人观点之浮动的本质是"包裹及破坏" 个人观点之目前大多数浮动应用都不是浮动应该做的 个人观点之浮动其实是个魔鬼.混球 一.引言 你我看待事物的方式不同,价值取向也不同,因为我们有着不同的世界观,价值观.这种世界观的差异不仅仅体现在实际的生活中,也反映在代码上.你我看待代码的方式,或者说是代码在我们情感层面的位置是不一样的,我这里说的是情感层面,与逻辑无关,与算法无关(虽然算法受情感影响).这种看待