DIV嵌套时外层无法自适应高度三种解决方案

开发 前端
相信很多朋友在使用CSS+DIV过程中都会遇到如何解决DIV嵌套时外层(父层)无法自适应高度这个问题,特别是目前的浏览器版本越来越多,更新的也非常快,对CSS的支持和要求越来越高.

这里向大家描述一下解决DIV嵌套时外层(父层)无法自适应高度的方法,原本自己写的CSS代码是没有错误的,但是为什么在新版的浏览器中会发现使用DIV嵌套时外层(父层)无法自适应高度的错误,这里看一下解决方案。

如何解决DIV嵌套时外层(父层)无法自适应高度?

相信很多朋友在使用CSS+DIV过程中都会遇到这个问题,特别是目前的浏览器版本越来越多,更新的也非常快,对CSS的支持和要求越来越高,如IE8、IE9、FF、chrome等等浏览器,虽然对CSS支持***,但是也有些错误,导致DIV+CSS的排版出现验证问题。

原本自己写的CSS代码是没有错误的,但是为什么在新版的浏览器中会发现使用DIV嵌套时外层(父层)无法自适应高度的错误,***所写的代码在IE6上能***的展示出来,但是在IE8、FF上却出现不适应高度的问题,难道是CSS不兼容浏览器?下面就来说说其解决方法。

假如***的CSS代码已经通过了W3C的验证,那就说明,我们写的代码完全是没有错误的,那么是说明原因呢?这个原因我也说不清楚,在网上查了好久,我也没有查到原因,但是查到了相关的解决办法,网上的解决办法有3种,但是我觉得不***,下面列出网上的我查找到的解决方法。

1、在外层的CSS代码中加入display:table

2、第二种解决方法是定义一个CSS类:

  1. .box:after{  
  2. content:".";  
  3. display:block;  
  4. height:0px;  
  5. clear:both;  
  6. visibility:hidden;  
  7. }  
  8.  

然后将父层DIV代码中的<divid="main">改为<divid="main"class="box">。

3、在外层(父层)CSS代码中加入overflow:auto;

在我使用了上面3种方法后,我觉得只有第3种方法有效,但是其效果不是很好,但是不会出现异常,不过为了更***的解决这个问题,我介绍一个很有效的方法给大家试试,这个方法绝对有效,而且也是很简单的。

最终解决方法:根据上面的3个方法,最终我的解决方法是,在外层(父层)CSS代码中加入下面两个属性值(一个都不能少)。 

  1. clear:both;overflow:auto;  
  2.  

【编辑推荐】

  1. CSS绝对定位和相对定位的区别
  2. JavaScript动态创建div属性和样式
  3. CSS中border和clear两大属性用法揭秘
  4. 正确使用CSS中position属性
  5. 解读DIV CSS网页布局中CSS无效十个原因

 

责任编辑:佚名 来源: iysera.com
相关推荐

2010-08-30 09:15:15

DIV高度自适应

2010-08-26 14:18:25

DIV高度

2010-08-30 09:52:03

DIV高度自适应

2010-08-25 13:10:43

div高度CSS

2010-08-26 10:56:16

CSStextarea

2010-08-30 10:26:20

DIV自适应高度

2017-04-13 11:20:37

图片宽度解决方案前端

2010-08-30 09:22:13

DIV高度自适应

2010-08-24 16:03:22

Div高度

2010-09-30 14:40:45

2010-08-26 16:27:46

CSS高度

2020-08-20 20:51:17

打散算法打散法原算法

2013-04-25 14:26:54

GridView

2020-03-31 16:13:26

分布式事务方案TCC

2019-03-20 13:40:58

模块化智能SIA

2010-09-10 11:15:34

DIV嵌套

2017-05-14 16:02:45

前端开发标签嵌套

2010-09-10 08:54:52

DIV居中

2015-10-21 14:23:08

反模式持续部署自动化运维

2011-07-21 10:22:36

OLEDBAccessDatab
点赞
收藏

51CTO技术栈公众号