CSSメニューを作っています。このために、私はを使用していul
ます。li
float を左にすると、すべてli
が ul の外に出ます。高さがul
ゼロになるということです。フロートを残した後、li
内部に表示するにはどうすればよいですか。ul
1 つの方法は、div
共通のクラスでタグを作成し、css で clear: both を追加することですが、これは必要ありません。
どうすればこれを解決できますか?
に追加overflow: auto;
するだけ<ul>
です。これにより、テキストがULの外部に漏れないようになります。
参照: http: //jsfiddle.net/6cKAG/
ただし、実行している内容によっては、を作成する方が簡単な場合があります<li>
display: inline;
。それはあなたが何をしているかに完全に依存します!
参照: http: //jsfiddle.net/k7Wqx/
子に定義する場合はfloat
、親をクリアする必要があります。overflow:hidden
あなたのULに書いてください。
ul{
overflow:hidden;
}
またはclearfix
これにはメソッドを
使用することもできます:
ul:after{
content:'';
clear:both;
display:block;
}
これは、フローティング要素(メニュー項目)が非フローティングコンテナ(ul
)内に配置されている場合に発生します。
これは、コンテナをフローティングすることによって(めったに受け入れられない)修正するか、この問題に正確に対処するclearfixを適用することによって修正できます。