答えて
本質的には、「フローのうち、」divを取り、それは空のスペースの周囲に境界線を描画しています。 http://jsfiddle.net/gJJHs/
は「両方の明確ななしフロート」を追加します。しかし、あなたが探している流体の振る舞いやデザインについては、CSSのハッキングをしなくてもブラウザ間で一貫性を保つためにjavascript(jQuery Equal Height:http://www.jainaewen.com/files/javascript/jquery/equal-height-columns/など)を適用したいと思うでしょう。
なぜこれが非常に迅速に下降したのかについての説明が大好きです。 CSSと浮動(Gabeの強さはC#)のユーザーの理解の私の認識に基づいて、彼のために重い持ち上げを行うjavascriptの方法は、 "divの高さを設定する"のような非ソリューションよりも適切です。 –
左フロートです。あなたはfloatを使用している場合、自動にオーバーフローを設定する必要が
問題は、あなたの列を浮遊している、とあなたは物事をフロートするとき、彼らは事実上ゼロスペースを取ることのようです。
私は解決策は、あなたの「最後」クラスにフロートをキャンセルして、各行に「ダミー列」を追加すると思います。
このCSSは動作するようです:
.col
{
float: left;
width: 25%;
}
.last{
clear: left;
}
.row{
border: 1px solid green;
}
(ダミー最後の列を持つ)
改訂HTML:
<div class="row">
<div class="col">1</div>
<div class="col">2</div>
<div class="col">3</div>
<div class="col">4</div>
<div class="last" />
</div>
<div class="row">
<div class="col">5</div>
<div class="col">6</div>
<div class="col">7</div>
<div class="col">8</div>
<div class="last" />
</div>
さらに別のオプションは、他の回答に加えて、あなたにoverflow: hidden;
を追加することです.row
。
あなたが見た挙動の理由は、float
が通常の流れの外にdiv要素を取ることです。 divは、本質的にドキュメント内にスペースをとらない。
これは、イメージを浮かべて周囲にテキストをラップするための表面的な目的を考えると意味があります。次のp
タグ(例えば)は、浮遊画像が存在しない、すなわち画像が重なっているように配置される。次に、ブラウザは画像の周りに 'p'タグ内のテキストをラップします。 (浮いた画像が「フローから削除」されなかった場合は、p
タグが自然に所望の効果を与えていない画像—の下に表示されます。)
は、ここで私はコードを書くと思います方法です。
HTML:
<div class="row">
<div class="col">1</div>
<div class="col">2</div>
<div class="col">3</div>
<div class="col">4</div>
</div>
<div class="row">
<div class="col">5</div>
<div class="col">6</div>
<div class="col">7</div>
<div class="last">8</div>
</div>
CSS:フロートは流れから削除されるため要素が浮いて
.col
{
float: left;
width: 25%;
}
.row{
border: 1px solid green;
overflow: hidden; /* "overflow: auto;" works just as well instead */
width:100%; /* Helps older versions of IE */
}
は、その親はもはやそれが含まれています。フローティングされた要素は自然な流れから外れているので、フローティングされた要素がそこに存在しないかのようにすべてのブロック要素がレンダリングされるため、親コンテナは完全に展開されずにフローティングされた子要素を保持します。他の人のよう
The Mystery Of The CSS Float Property
:それは何かを境されていないよう:(CSSフロートプロパティがどのように動作するかのより良いアイデアを得るためには、次の資料を見てみましょう
そのため、border
は思えますあなたは.row
クラスにoverflow: auto;
を追加する場合、それは問題の世話をするだろう、と述べている。ここでは、オーバーフローを使用する理由を説明する別の記事です。
http://www.quirksmode.org/css/clearing.html
私はこれが役に立ちそうです。
Hristo
- 1. ListView分割レイアウト
- 2. ホームページ分割レイアウト(CSS)
- 3. Python文字列分割結合4
- 4. CSSの複数の列のレイアウト:間違った列の分割
- 5. svmfile行列を4つの部分に分割
- 6. カラムスパンなしでFirefoxで列レイアウトを分割する方法は?
- 7. 3つの列のレイアウトにフォームを分割する
- 8. ExtJSの列レイアウトの列の高さ4
- 9. イメージを4分割し、OpenCVで4分割1と4を180度回転させる方法は?
- 10. 配列を4セグメントに分割して4スレッドで印刷する方法
- 11. 文字列を4文字のブロックに分割する
- 12. ブートストラップ4の5列の行を分割しますか?
- 13. 文字列を4文字でC++で分割する
- 14. 文字列powershellバージョン4を分割しますか?
- 15. C - 行列を4で分割する方法
- 16. 分割列
- 17. 分割列
- 18. 分割列2008
- 19. 分割リンク列
- 20. ブートストラップ4カード絶対分割コンテンツ
- 21. 4分割でバインディングを作成する
- 22. スウィフト4分割ビューコントローラの詳細は、マスター
- 23. メインウインドウを4つのウィジェットに分割Qt
- 24. 分割見出しの下に分割レイアウトを配置する方法は?
- 25. Wpf DataGrid列分割
- 26. Jtableの列分割
- 27. 分割文字列
- 28. 分割文字列
- 29. 分割列がR
- 30. 分割列の値
'height'を設定する必要はありません。これ以外にも、これは浮動小数点数を「クリア」するのに好ましい方法です。 – You
あなたの権利、ありがとう。 – RandomWebGuy