gpt4 book ai didi

asp.net - 为什么当我 float 列表元素时列表的背景颜色消失了?

转载 作者:太空狗 更新时间:2023-10-29 12:36:41 26 4
gpt4 key购买 nike

当我 float 我的无序列表元素时......背景颜色失败了。为什么?

<style type="text/css">

.bkgrd-blue { background-color: #094AB2; }

.application-bar { color: #FFFFFF; }

.application-bar ul { }
.application-bar ul.control-bar { list-style: none outside none; margin: 0; overflow: visible; padding: 0; }

.application-bar ul.control-bar.branding { float: left;}
</style>

<div class="application-bar bkgrd-blue">
<ul class="control-bar">
<li>
This is working!
</li>
</ul>
</div>

<div class="application-bar bkgrd-blue">
<ul class="control-bar branding">
<li>
The moment I float this...it fails! Why?
</li>
</ul>
</div>

最佳答案

float 元素会将其从正常文档流中移除,因此容器不会扩展 - 也就是说,包含 div 的高度为 0。

要解决此问题,您需要清除 float 。您可以:

  • div 上设置 overflow: hidden
  • float div
  • 使用 clear:both 在 float 列表之后添加一个元素 - 这可以使用 :after 伪元素来完成

这是使用第一种解决方案的演示:http://jsfiddle.net/FSH4Y/

我补充说:

.application-bar {
color: #FFFFFF;
overflow: hidden;
}

这里有一些关于这个问题的更多信息:CSS Tricks: All About Floats - 查看名为The Great Collapse

的部分

关于asp.net - 为什么当我 float 列表元素时列表的背景颜色消失了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13992118/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com