如何强制div元素将其内容保存在容器中

Om3*_*3ga 14 html css

我做css菜单.为此,我使用ul.当我向左浮动时,所有lis都在ul之外.我的意思是ul的高度变为零.如何在向左浮动后使li显示在ul内.

一种方法是使用一些公共类创建一个div标签,然后添加clear:在css中都可以使用它,但我不希望这样.我需要更好的解决方案 请帮忙

Nat*_*ael 24

只需添加overflow: auto;<ul>.这将使文本不会泄漏到UL之外.

请参阅:http://jsfiddle.net/6cKAG/


但是,根据你正在做的事情,可能更容易做到<li> display: inline;.这完全取决于你在做什么!

请参阅:http://jsfiddle.net/k7Wqx/


san*_*eep 8

如果您定义float了您的孩子,那么您必须清除您的父母.写信overflow:hidden给你的UL.

ul{
 overflow:hidden;
}
Run Code Online (Sandbox Code Playgroud)

或者 您也可以使用clearfix此方法:

ul:after{
 content:'';
 clear:both;
 display:block;
}
Run Code Online (Sandbox Code Playgroud)

阅读http://css-tricks.com/snippets/css/clear-fix/