2011-01-12 4 views
0

私のジレンマはこれです(単純であると思います)。私はコンテナとアイテム(両方のdiv)を持っています。以下のCSSが適用されます。コンテナ内で中央に並んでいるフローリングアイテム

.container { 
    float:   left; 
    width:   100%; 
} 


.item { 
    margin:   32px; 
    text-align:  center; 
    position:  relative; 
    float:   left; 
} 

.item自体は任意の要素のほぼすべてのセットを持つことができるコンテナですが、彼らはセンターがその中に整列する必要があります(私の場合、それは一般的にサムネイル画像が含まれていますそれの下にあるテキストの小さな字幕)。上記のCSSはそれぞれの.itemが好きなように水平方向に流れることを許していますが、セットセンター全体をどのように整列させるかを理解することはできません(今のように左から右に流れるのではなく)。

+1

なぜ幅を100%に設定してブロックを表示するときにdivをフローティングするのですか? – Shahid

+0

ブロック表示はdivなので実際は冗長ですが、私は信じています。しかし、なぜそれがどういうふうに動作するのか分かりません。 – Hamster

答えて

1

編集
変更.item { display: block; }.item { display: inline-block; }に、離れ.item { float:left; }を取ると、あなたがここでそれを見ることができますtext-align: center;

.containerに追加します。あなたはまた、width:75%; margin: 0 auto;.innerのdivを配置し、入れることができますhttp://jsfiddle.net/JMC_Creative/RQrRb/

あなた.itemの場合は、です。側面にスペースがある場合は、

+0

@Hamster:編集 – JakeParis

+1

インラインブロックをチェックしますか?私はそれが存在することを知らなかった...愚かなw3schools。 – Hamster

+0

これはすべてのブラウザで動作するわけではありません。具体的には、IE6とIE7にはバグがあります。真にクロスブラウザを実装するための私の答えを見てください。 – sholsinger

0

.container {
width: 100%;
}

.item {
margin: 32px;
text-align: center;
}に親コンテナを設定することにより、中央揃えすることができ

+0

これは、すべての '.item' divsを互いのスタックの上にスタックさせます。それは彼が探しているものではありません。 – JakeParis

+0

彼のコードでは、.containerの幅は100%に設定され、.itemはブロックです。私はdiv。が積み上げられたかったと思った。 – Shahid

関連する問題