2012-02-16 14 views
0

幅が330ピクセル、高さが50ピクセルになるインラインリストがあります。しかし、私はそれが私が望む幅/高さにすることができません。それはそれが含んでいる内容と同じくらい大きいだけですが、何が間違っていますか? http://jsfiddle.net/Apnx5/インラインリストの幅と高さを変更する

+0

あなたがすることを指定したとおりに働いています。指定したとおり、リストの幅は330px、リストの高さは50pxです。すべてのアイテムが330px x 50pxになるようにすることを意味しましたか? – caleb

+0

あなたのリスト項目は 'ul'を埋めるものではありません。余分なスペースがどこで終わると思いますか? 4つのアイテムに均等に分散していますか? – mrtsherman

+0

@mrtshermanはい、それは可能ですか? – user1174762

答えて

3

現在のhtml設定では、これを行うことはできません。私はこれらのリストアイテムをコンテンツに基づいて動的にサイズ調整したいと思っていますが、残っているものがあればそれを追加してください。

代わりにdisplay: table-cellを使用してください。これには、マークアップとCSSの両方の変更が必要です。 IE7との互換性はありませんが、IE7は急速に死んでいます(IE6とは異なります)。

http://jsfiddle.net/mrtsherman/Apnx5/6/

<div id="listed"> 
     <div class="item"><a href="#"> Profile </a></div> 
     <div class="item"><a href="#"> About </a></div> 
     <div class="item"><a href="#"> Photos </a></div> 
     <div class="item"><a href="#"> My Albumlist </a></div> 
</div>​ 

#listed { 
    height: 50px; 
    width: 330px; 
    display: table; 
} 

div.item { 
    display: table-cell; 
    border: 1px solid gray; 
    vertical-align: middle; 
    text-align: center; 
    border-collapse: collapse; 
} 
+0

HTMLの変更が必要なのはなぜですか? ulとli要素はそれらのスタイルをとることができるはずです。 –

+0

答えは正しいですが、恐ろしいです。私はここでそれを修正した:http://jsfiddle.net/Apnx5/13/ – caleb

関連する問題