2011-11-11 10 views
5

インラインブロックを使用して複数の列を持つ最良の方法を探しています。ブラウザのサイズが変更された場合を除いて、すべてがうまくいきます。 2番目の列は、インラインブロックで期待されるように、最初の列の下にプッシュされます。私は、なぜそれが起こるのか理解しています。第2列を押し下げるのではなく、水平スクロールを行う方法があるかどうかを知る必要があります。私はオーバーフローだと思った:隠された、しかしそれはそう思わない。2つの要素のインラインブロック - サイズ変更時にフローなし

私は現在幅を設定しておらず、できるだけ流動的なものにしておきたいと考えています。

<div> 
    <div id="col1"></div> 
    <div id="col2"></div> 
</div> 

COL1とCOL2はない幅を設定してインラインブロックであり、ブラウザビューが十分に広い場合、それらを並べて表示します。ユーザーのブラウザのサイズを小さくするとcol2がcol1の下に表示されます。私は彼らがいつも横に並んでいて、必要に応じて横スクロールをしたい。

答えて

8

display: inline-blockを持つ要素の親にwhite-space: nowrapを追加します。

+2

ありがとうございます。これはまさに私が望んでいたものです。通常、インライン要素の内部にあるテキストなので、それを使用する必要があります。 – mcot

+0

もう一度見てみると、外側のdivの幅を結合した内側の列のサイズに押し出すようには見えません。それを行うには? – mcot

+0

ああ。ちょうどそれを考え出した。また、overflow-xを追加します:親にscrollは私が望むことをします。 – mcot

0
<div style="width:500px"> // <=== try to make fix width 
    <div id="col1"></div> 
    <div id="col2"></div> 
</div> 

またはあなたが外側のdivにmin-widthを設定してみること

<div style="min-width:500px"> // <=== try to make fix width 
    <div id="col1"></div> 
    <div id="col2"></div> 
</div> 
+0

ありがとう、私はコンテンツに基づいて流動性を保つようにしたいと思っていましたが、方法があるとは確信していません。 – mcot

+0

@ user595078もしあなたが何らかのoverflow-xをやめるならば、ブラウザーに "スクロールを開始する境界は何なのか"を伝える必要があるので、修正幅が必要です。 –

+0

Yah thatsは私が思ったものです。それは、col2に液体の内容を含むテーブルが含まれているので、うんざりです。 – mcot

0

を試してみてください。したがって、ウィンドウが小さい場合にのみ適用され、実際のサイズは修正されません。

関連する問題