2012-07-17 10 views
5
<ul id='ul01'> 
    <li><a href='#'><img src='img01.png' width="700" height="590" /></a></li> 
    <li><a href='#'><img src='img02.png' width="700" height="590" /></a></li> 
    <li><a href='#'><img src='img03.png' width="700" height="590" /></a></li> 
</ul> 

CSS:ul widthプロパティの調整方法は?

#ul01{list-style:none;width:??;} 
#ul01 li{float:left;} 

これは、画像の水平方向の配列です。 list.items.countはさまざまです。
すべての画像に合わせるには、どのような幅プロパティが必要ですか?
私は - autoと予想される幅変更を試しましたが、そうではありません。

+1

各画像(700ピクセル)は既に画面の幅を塗りつぶしていますか? – codingbiz

+0

JavaScriptを使用できますか? – jfrej

+0

ここであなたが探しているものを明確に説明できますか? – thirtydot

答えて

8

li要素inline-block Sを作成し、nowrapulwhite-spaceプロパティを設定してください。

li { 
    display: inline-block; 
} 
ul { 
    white-space: nowrap; 
} 
+1

+1唯一の解決策です。 – Christoph

+1

はい、それは動作します、Everyoneのおかげで、特にmagicalex – Alice

0

jqueryを試してください。したがって、CSSファイルでは0を入力でき、値は後で変更されます。

<script type="text/javascript"> 
    $(document).ready(function() { 
    var sum = 0; 
    $('#ul01 li img').each(function() { 
     sum += parseInt($(this).attr("width"), 10); 
    }); 
    $('#ul01').css({ 'width': sum+'px' }); 
    }); 
</script> 
2

私はこれらがあなたのために働くだろうと思いますこれらの変更...

#ul01{list-style:none;width:100%;} 
#ul01 li{float:left; width:33%; } 
#ul01 li a { display:block; } 
#ul01 li a img { width:100%; height:auto; } 

<ul id='ul01'> 
    <li><a href='#'><img src='img01.png' /></a></li> 
    <li><a href='#'><img src='img02.png' /></a></li> 
    <li><a href='#'><img src='img03.png' /></a></li> 
</ul> 
+0

しかし、OPの画像の高さと幅は固定されており、画像サイズは – codingbiz

+1

-1で固定されています。 – Christoph

+0

しかし、そのメリットはどんなサイズの画像でも調整されます – SaurabhLP

1

画像に指定したサイズを保持する必要がある場合は、ページに水平スクロールバーがあることがわかります。あなたは、これが動作することを希望する場合

#ul01{list-style:none;width:2100px;} 
#ul01 li{float:left; width:700px} 

ul幅がなければならない(width X 3) + (2 X image-border-if-any} + padding = 2100px + nあなただけのul要素にwidthプロパティを置く

+0

@ tcoderの画像の数は異なる可能性があります – Alice

+0

@Christophの答えをお試しください – codingbiz

関連する問題