
下記のサイトを見てページを作ってるのですが、どうしても<div>ごとに改行されてしまいます。
ほぼコピペしただけなのですが、デモページではきちんと改行されずに表示されていますよね。
どうして改行されてしまうのでしょうか。対処法があれば教えていただけると助かります。
当方ど初心者ですので一番わかりやすいのをお願いします(>人<;)
http://coliss.com/articles/build-websites/operat …
No.1ベストアンサー
- 回答日時:
質問がどの部分を指しているのか意味が分かりませんが、divはブック要素ですから、
スタイルシートで変更しない限り『ブロックレベル要素は新しい行を開始し、行内要素は新しい行を開始しない。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )』はずです。
スタイルシートで、displayの値を、inline、inline-blockなどに指定しない限り、ブラウザのもつデフォルトのスタイルで整形されます。
★老婆心ながら、この手のサイト、余りはまらないほうが良いですよ。
CSS3のcolumnを使ったレイアウトの説明ですが、1999年に勧告されたHTML4.01以来の「文書構造とプレゼンテーションの分離」が全くされていません。
DIVは『id属性及び class属性と併用することで、文書に構造を付加するため( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )』
ですし、HTML5では、『Authors are strongly encouraged to view the div element as an element of last resort, for when no other element is suitable.( http://www.w3.org/TR/2012/CR-html5-20121217/grou … )---著者は、他に適当な要素がないときの最後の手段としてdiv要素を使用することを強く推奨する』言い換えれば原則DIVは使いません。
デザインのためにHTMLを書いてはならない!!!という原則を外れています。
★culumnは、単純に「段組」のための仕組みですから、単純にその要素をinline-blockにして整形すればよいだけです。
HTML5的に書くと
<body>
<header>
</header>
<section>
<ul>
<li><img src="" width="" height="" alt="">
<p>説明</p>
</li>
・・・・という形にHTML4.01でしたら
<body>
<div class="header">
</div>
<div class="section">
<ul>
<li><img src="" width="" height="" alt="">
<p>説明</p>
</li>
になります。
それを単純に(細部を省くと)
section ul,section ul li{list-style:none;margin:0;padding:0;}
section ul{column-count: 3;}
section ul li{display:inline-block;}
ないし、
div.section ul,div.section ul li{list-style:none;margin:0;padding:0;}
div.section ul{column-count: 3;}
div.section ul li{display:inline-block;}
にすればよい。
そしてこれは印刷には向かないので、印刷用は
section ul,section ul li{list-style:none;margin:0;padding:0;}
とか・・
もちろん検索エンジンには素のHTMLとして画像リストとして理解させることになります。
No.3
- 回答日時:
デモページのどの部分を見て<div>の改行と判断されてますか?
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
というHTMLドキュメントがあるとして、(別に<li>でも<section>でも何でも良いです。)
参考サイトの用にcolumnを使用してレイアウトすると、
1 4
2 5
3 6
という順番で表示されます。
floatを使用すると、
1 2
3 4
5 6
という順番で表示されます。
もし表示順を考慮する必要があるのなら、
floatとcolumnに互換性はありませんので、各オブジェクトの高さが違うからcolumnを使えばよいという物ではありません。
デザインにあわせてCSSを書いてみてください。
No.2
- 回答日時:
--------------------------------------------------------
<style>
.clear { clear:both; }
.clear hr { display:none; }
</style>
<div style="width:100px; background:#999; float:left;">box1</div>
<div style="width:100px; background:#CCC; float:left;">box2</div>
<div class="clear"></div>
<div style="width:100px; background:#999; float:left;">box3</div>
<div style="width:100px; background:#CCC; float:left;">box4</div>
--------------------------------------------------------
↑これで横並びに設置できます。
「flort:left;」で横に配置し、上のstyle部分で横並びを解除してます。
解除しないと延々横に配置されます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
html の divとtable の役割
-
htmlのolやulなどlistにtitleや...
-
HTML属性での「""」 「''」違い
-
複数のボタンを等間隔に、かつ...
-
div要素が重なってします
-
1時間30分を簡単に表したいで...
-
ヘッダーとフッターだけ背景を...
-
疑似フレーム(CSS使用)のタグ...
-
要素間、要素内に隙間が空く
-
min-heightとheightの違いについて
-
SEOの観点から特殊記号はどのよ...
-
サルワカさんの吹き出しのスタ...
-
掲示板もtableを使わず作った方...
-
body>div{}の意味を知りたい
-
<div>で改行させない方法
-
cssのdivについて
-
html5でheader,footerこみのwra...
-
空のspanタブについて
-
html/css pの中に複数のdivが...
-
htmlの文字が縦書きになる
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlのolやulなどlistにtitleや...
-
HTML属性での「""」 「''」違い
-
html の divとtable の役割
-
複数のボタンを等間隔に、かつ...
-
スペースを使わず文字位置を揃...
-
<div id="container">の使いか...
-
ヘッダーとフッターだけ背景を...
-
1時間30分を簡単に表したいで...
-
<!-- #BeginLibraryItemとは
-
body>div{}の意味を知りたい
-
IEだとリンクされるが他ブラウ...
-
CSSについて教えてください...
-
ウェブサイトの作成方法について
-
div要素が重なってします
-
SEO対策のタイミングはHP作成前...
-
IE10でホームページがもの凄く...
-
スタイルシート<記述>
-
.レスポンシブウェブデザインに...
-
グリッドレイアウトで"auto-fit...
-
CSS(初歩的)な質問です…float...
おすすめ情報