2012-06-27 31 views
9

私はCSSメニューを作っています。このため私はulを使用しています。私がフロートを左にすると、すべてのリスがウルの外に出る。私はulの高さがゼロになることを意味します。浮動小数点を残した後、ul内に李を表示させるにはどうすればいいですか?div要素の内容をコンテナ内に保持する方法

共通のクラスを持つdivタグを作成してクリアを追加する方法の1つですが、両方ともCSSではこれには必要ですが、これは必要ありません。私はより良い解決策が必要です。助けてください

+0

あなたのコードを教えてください。 –

答えて

16

<ul>overflow: auto;を追加するだけです。それは、テキストがULの外部に漏れないようにします。

参照:http://jsfiddle.net/6cKAG/


しかし、あなたがやっているものに応じて、それだけで<li>display: inline;を作成する方が簡単かもしれません。それはあなたがやっていることにまったく依存します!

参照:http://jsfiddle.net/k7Wqx/

6

あなたの子供にfloatを定義する場合は、あなたの親をクリアする必要があります。あなたのULにoverflow:hiddenを書いてください。

ul{ 
overflow:hidden; 
} 

OR また、このためclearfix方法を使用することができます

ul:after{ 
content:''; 
clear:both; 
display:block; 
} 

を浮かべ要素(メニュー項目)を非浮動の内側に配置されている場合、この問題が発生し、このhttp://css-tricks.com/snippets/css/clear-fix/

+0

私はdownvoteを与える人は理由を説明してください。私の答えで何が間違っているのでしょうか? – sandeep

+0

IEの最初のルールセットに 'zoom:1'を追加することもお勧めします。そうでなければバージョン

+1

@TiesonT。 :IE8&OPまでの仕事の後、彼の質問にcss3が定義されています。彼は現代のブラウザをサポートしたい – sandeep

0

を読みますコンテナ(ul)。

これは、容器を浮かせる(まれに受け入れられる)か、またはこの問題に正確に対処するapplying a clearfixのいずれかで修正できます。

1

あなたはdivの中に溢れテキストが

word-wrap: break-word 

プロパティを使用して、隠されているか、スクロールバーを作るのではなく、自動的に改行したい場合。

関連する問題