![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.3ベストアンサー
- 回答日時:
複数のブロックを「段組もどき」で配置することと、記事を段組することの違いはきちんと区別してください。
本来の段組は、長い記事を一行80文字とかで表示すると目で追うのが大変なので、40文字の二段に段組して、二つの段にテキストを流し込むことを言います。そとと3では、それが用意されます。CSS Multi-column Layout Module ( http://www.w3.org/TR/2011/CR-css3-multicol-20110 … )
これは、文書構造上、記事自体は連続しているものをプレゼンテーションで二段に分けるという問題なので、HTMLではなくCSSで指定すべきですから、HTML5だろうとHTML6だろうとHTMLには用意されないでしょう。
さて、本題のブロックを並べる方法ですが、HTML5で
<body>
<header>
</header>
<section>
<h2>記事見出し</h2>
<div id="tableContent"><!-- 目次 --></div>
<section>
<h3>章見出し</h3>
・・記事・・
</section>
<section>
<h3>章見出し</h3>
・・記事・・
</section>
<section>
<h3>章見出し</h3>
・・記事・・
</section>
</section>
<footer>
<nav id="sitmap"></div>
</footer>
</body>
というHTMLがある場合、body>section内のdiv.tableContentは、body>sectionの左横に置き、footer navは、ページの右に置く。本文の章はウィンドウの巾によって一段から3段に段組して表示する・・・なんてことが、文書構造を変更せずに出来るようになるでしょう。
ソースまでご提供頂き、まことに済みません。
段組とdivブロックを並べることの違いは、以前にお聞きして把握しています。
一般企業としてはやはりdivブロックを並べたレイアウトに関心があります。
用語で専門家の方と齟齬が生じたのは申し訳ありません。
他の用語も全く思いつかなかったので敢えて段組と表現しました。
No.2
- 回答日時:
ボックスを並べるためのfloatはほぼ必要なくなります。
displayの属性にboxという要素が追加されています。
#aaa{display:box;}
と言う要素を持った親要素を作成した場合、
子要素のボックス要素(主にdiv)はfloatをかけなくても
横幅が余っていれば、回り込んで配置されます。
さらに、heightも並んでいる要素の中で最も大きい要素と自然に揃えてくれます。
IEの対応が待ち遠しいですね。
参考URL:http://www.css-lecture.com/log/css3/css3-layout- …
どうも情報提供有り難うございます。
これだと教えてgooのようなサイドメニューとかには
対応できそうもありませんが、
取り敢えずclearfix系の呪縛からは解放されそうですね。
HTMLにはまだ完全に慣れきってないので
頓珍漢なことを言っていたらご指摘お願いします。
No.1
- 回答日時:
HTML5自体で変わるわけではありません。
HTML4.01で
<body>
<div class="header">
<div class="nav"></div>
</div>
<div class="section">
</div>
<div class="figure">
</div>
</body>
だったものが、
<body>
<header>
<nav></nav>
</header>
<section>
</section>
<footer>
</footer>
</body>
と文書構造を示すclass名をつけなくても、文書構造を示せる要素が導入された以上の変更があるわけではありません。
「DIV要素とSPAN要素は、id属性及び class属性と併用することで、文書に構造を付加するための一般機構を提供する。 ( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」
↓
「HTML5 では、文書をよりよく構造化するために、次の要素が新しく追加されました。 ( http://standards.mitsue.co.jp/resources/w3c/TR/h … )」
段組(Columns)とは、本来の意味は文字通り段組です。新聞記事が段組されているため一行の文字数を長くしないで何段もの段に自動的に文字が振り分けられて並べることが本来の段組です。HTML(Web)において多用されるtableやabsoluteを使用する方法は、本来の段組ではありません。
HTML5で段組をというのは誤解で、CSS3で「段組が可能になった」を誤解されているのではないですか?
CSS3で導入されるcolumns(column-width,column-count)、column-rule(column-gap,column-rule,column-rule-color,column-rule-style,column-rule-width)、break-after,break-before,break-inside、column-span,column-fillと言った段組に関わるプロパティは、本来の意味での段組です。
<div style="width: 600px;column-width:290px;">
<p>・・・</p>
<p>・・・</p>
・・・・
</div>
で、
・・・・・・・・・ 左下より・・・・・・
・・・・・・・・・ ・・・・・・・・・・
・・・・・・・・・ ・・・・・・・・・・
・・・・・・・・・ ・・・・・・・・・・
・・・・・・・・・ ・・・・・・・・・・
・・・・・・・・・ ・・・・・・・・・・
・・・・・・右上へ ・・・・・・・・・・
のように段組されます。
以前、floatによる段組について - Webデザイン・CSS - 教えて!goo ( http://oshiete.goo.ne.jp/qa/7079628.html#a3 )で回答したことがあるのですが、確かにfloatで配置する方法が多いのは事実ですが、本来はabsoluteで配置するほうがよいと思っています。それは、上記リンク先で参照しているWikiの記事の「Webデザインにおける段組 ( http://ja.wikipedia.org/wiki/%E6%AE%B5%E7%B5%84# … )」に詳しいので省きます。
いずれにしても、
[本来の段組--次の段にテキストを回り込ませる]を、文書構造を崩さずに、きちんと段組をするためには古いブラウザを無視してCSS3でデザインすると言うことになると思います。
ご回答有り難うございます。
そういえばリンク先でも私も回答してますね^^;
以前から時折ROMっていたので
ORUKA1951さんがabsolute派というのは知っています。
それでORUKA1951さんがよく仰っていた
sectionやarticleやfigureといったタグに段組の仕組みが
あるのかなと思ったのですが、そうでもないらしい。
段組をどのように文書構造に反映させていくんだろうと思ってました。
段組はあくまでレイアウトということですね。
columnsという属性で指定していくのですか。
HTML5で段組が可能になったというのは
他のベテランの方の記述を見て、そうなのかと思いました。
ただ、その時は漠然と認識していたため、勘違いがあるかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS 吹き出し 下記の吹き出しのスタイルシートについて 下記のスタイルシートは左側にアイコンがでる使用にな 1 2022/11/12 17:55
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- HTML・CSS cssの display: flex;で横並びにならずに困ってます 1 2022/12/04 13:18
- HTML・CSS htmlです。 上のところには黒文字でピカチュウで、ピカチュウの文字には影をすべてにつけてください周 1 2023/01/02 12:48
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- 特撮 ジローは何故キカイダーの時とは逆側に取り付けたサイドカーを使うのですか? 4 2023/06/21 18:28
- C言語・C++・C# C言語: ポインタ 5 2022/06/01 08:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
HTML属性での「""」 「''」違い
-
htmlのolやulなどlistにtitleや...
-
div要素が重なってします
-
複数のボタンを等間隔に、かつ...
-
min-heightとheightの違いについて
-
hタグの右横に画像を表示
-
1時間30分を簡単に表したいで...
-
横並びdivで一部の初期高さがず...
-
スペースを使わず文字位置を揃...
-
divとpの使いわけ
-
スライド部分のリンクが貼れな...
-
divの中に外部のHTMLを埋め込む
-
要素間、要素内に隙間が空く
-
3カラムレイアウトで「常に残り...
-
背景画像に全体または部分的に...
-
【CSS】HTML直書き→外部ファイ...
-
article、section、hgroup?
-
h1に自分自身へのリンクを張...
-
html の divとtable の役割
-
セクションをdivで囲むと見出し...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
HTML属性での「""」 「''」違い
-
htmlのolやulなどlistにtitleや...
-
div要素が重なってします
-
複数のボタンを等間隔に、かつ...
-
html の divとtable の役割
-
<div id="container">の使いか...
-
min-heightとheightの違いについて
-
ヘッダーとフッターだけ背景を...
-
1時間30分を簡単に表したいで...
-
要素間、要素内に隙間が空く
-
画面を縮小するとカラムが落ち...
-
h1のテキストサイズよりh2の方...
-
divの中に外部のHTMLを埋め込む
-
スペースを使わず文字位置を揃...
-
<!-- #BeginLibraryItemとは
-
hタグの右横に画像を表示
-
グリッドレイアウトで"auto-fit...
-
セクションをdivで囲むと見出し...
-
開閉式の隠し要素が一瞬表示さ...
-
html5でheaderの中にnav
おすすめ情報