私はコンテンツの3列を表示する方法を探しています。ラップアラウンドカラムを表示する方法を見つけましたが、このページでは必要ありません。私は言うべき道を探していますHTML/CSSの列を行う最善の方法
<column>
<!-- content -->
</column>
3回、お互いに3列表示されています。私が主張している最良の例はThe Verge(http://www.theverge.com/)です。これを行う最善の方法は何ですか?
私はコンテンツの3列を表示する方法を探しています。ラップアラウンドカラムを表示する方法を見つけましたが、このページでは必要ありません。私は言うべき道を探していますHTML/CSSの列を行う最善の方法
<column>
<!-- content -->
</column>
3回、お互いに3列表示されています。私が主張している最良の例はThe Verge(http://www.theverge.com/)です。これを行う最善の方法は何ですか?
<table>
またはCSSを使用することをお勧めします。
CSSは柔軟性が高いため、例は次のようになります。
<!-- of course, you should move the inline CSS style to your stylesheet -->
<!-- main container, width = 70% of page, centered -->
<div id="contentBox" style="margin:0px auto; width:70%">
<!-- columns divs, float left, no margin so there is no space between column, width=1/3 -->
<div id="column1" style="float:left; margin:0; width:33%;">
CONTENT
</div>
<div id="column2" style="float:left; margin:0;width:33%;">
CONTENT
</div>
<div id="column3" style="float:left; margin:0;width:33%">
CONTENT
</div>
</div>
jsFiddle:http://jsfiddle.net/ndhqM/
フロートを使用して:3列が中心のdiv「コンテンツボックス」内の左から入ってくる、お互いに固執するだろう残しました。
私は、スタイル属性の中に 'width'を入れたいと思います:' style = "margin :0自動;幅:70%; "。また、既定のスタイルシートでdivにマージンを適用するブラウザは認識していないので、float divのmargin:0;は不要です。 – steveax
私は幅について思い出させてくれてありがとう。一定。 – AbSoLution8
私はマイキーの答えが私の個人的な書式の問題に必要であることを発見したと付け加えたいと思う。将来の読者は、Mikeyの答えと同様にこの記事を見てください。 – muttley91
3フロートの列構造(これも私もお勧めします)に加えて、columncontainerの後ろにある要素のlayoutproblemsを防ぐためにclearfixを挿入する必要があります(つまり、フロー内にcolumncontainerを保持します...) 。
<div id="contentBox" class="clearfix">
....
</div>
CSS:
.clearfix { zoom: 1; }
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }
.clearfix:after { clear: both; }
あなたはおそらく、それはベンダー接頭辞の使用を含んんが、このためにCSS3を使用して検討すべきです。
私はデモのために素早くfiddleをノックアップしましたが、その要点はこれです。
<style>
.3col
{
-webkit-column-count: 3;
-webkit-column-gap: 10px;
-moz-column-count: 3;
-moz-column-gap: 10px;
column-count:3;
column-gap:10px;
}
</style>
<div class="3col">
<p>col1</p>
<p>col2</p>
<p>col3</p>
</div>
[w3schools](http://www.w3schools.com/css3/css3_multiple_columns.asp)で、これに関するブラウザサポートを知っておくと便利です。 IE10 +。私はより良いブラウザのサポートを待たなければならない – Duncanmoo
@ Duncanmooのリンクが壊れている、これを試してみてください:http://caniuse.com/multicolumn - 現在、ブラウザのサポートの約14%(接頭辞付きで76%)だけです。 – naught101
欲しい私は古いコメントを編集することができましたが、ここでは[w3schools](http://www.w3schools.com/css/css3_multiple_columns.asp)リンクのブラウザサポートがあります。 – Duncanmoo
あなたも試してみてください。
.col{
float: left;
}
.col + .col{
float: left;
margin-left: 20px;
}
/* or */
.col:not(:nth-child(1)){
float:left;
margin-left: 20px;
}
<div class="row">
<div class="col">column</div>
<div class="col">column</div>
<div class="col">column</div>
</div>
REF:あなたのスタイルシートでhttp://codepen.io/co0kie/pen/gPKNWX?editors=1100
利用フロート? – hjpotter92
嫌なことに、時には古いスクールテーブルの要素を使用することは、行と列のコンテンツを書式設定する最も簡単な方法です。私はあなたがcssルートを探していることを知っているので、答えではなくコメントを追加することに決めました。 –
@ TheJumpingFrog私はfloatを使用しましたが、画面サイズによってはこれと一貫性のない動作が見つかりました。 floatメソッドを使って「常にこの1つの形式で表示する」と言う方法はありますか? – muttley91