前端 - 如果不给div定宽高,那么他的子类或子类的子类定宽高的话,那么那个div有宽高吗?
黄舟
黄舟 2017-04-17 11:28:28
[HTML讨论组]

我的ul,li都没有设置宽高,只是子类的子类img和p设置了宽高,为什么ul的height为0呢?
子类没有把他撑起来

比如这个p.content-inner和ul#p-1都没有设宽高,
但是页面元素审查时却显示宽高,是怎么回事?和后代元素设宽高有关系吗?
为什么我这样做的话p和ul还是没有显示宽高呢?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(6)
大家讲道理

目测是因为li用了float所以ul撑不起高度来

好像是我最先回答这个的……结果被题主无视了,题主没有给下面li的样式,所以我开始也不能确定,看你追问别人,那就果然是float的问题没跑了

解决方法3种:父标签添加overflow:auto/浮动标签最后添加一个clear:both的空元素/父标签用:after伪类定义一个clear:both的隐藏区块

天蓬老师

父类会被撑起来

阿神

父类的高度为auto,被子类撑起来了,chrome上显示的宽高是浏览器计算后的宽高,所以styles里是不会显示的,可用jsgetComputedStyle取得值

伊谢尔伦

p没有在没有设置宽高的情况下都是根据子类的宽度来决定的,也就是被撑起来的。然后你可以在你的调试器里面盒模型一栏里面查看宽和高

迷茫

父类的宽高相当于是auto,会被子类的空间大小(不是内容大小)给撑开

迷茫

个人认为得分情况,两种情况:

  • 有浮动,那当然就可能没有高度了。
  • 没有浮动,父元素会被撑开,height:auto;

解决方法:对父元素添加 .clearfix ( bootstrap 的一个类,你可以去看看),可以获得高度。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

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