A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
重なるのが嫌なら、floatにすればいい。
そうすれば、重なる状況では下に落っこちる。どうしたら?ではなく、どうしたいのかです。なぜ重なるのかは、左右の幅が合計で親要素の100%を越えているからではないかと推察します。計算してみてください。
左右の幅がmarginとwidth+border+paddingの合計の値が親要素の100%以下になっていますか?
または、
box-sizing: border-box;の指定をし、marginとwidthの合計の値が親要素の100%以下になっていますか?
どうしたらよいのでしょうかって、私は重なっても困らないので、そのままでもいいのでは?と思います。dragon_さんが、どうしたいの?サイズを小さくしてでも重ならないようにしたいのか、大きさはそのままで別のデザインにしたいのか?
以下は幅50%のdiv要素を左右交互に配置した例です。50%が2つなので、100%です。
<style type="text/css">
div{
width:50%;
box-sizing: border-box;
float:right;
margin:0;
padding:1em;
background:#ffdddd;
border:1px solid #ffffff;
}
div:nth-child(odd){
float:left;
background:#ccffff;
}
</style>
</head>
<body>
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
</body>
</html>
No.1
- 回答日時:
DIVでは分かりません。
大原則なので御存知だと思いますが、DIVは『id属性及び class属性と併用することで、文書に構造を付加するため( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )』のものでデザインのために使用するものではありません。HTML5では、【引用】____________ここから
NOTE:Authors are strongly encouraged to view the div element as an element of last resort, for when no other element is suitable. Use of more appropriate elements instead of the div element leads to better accessibility for readers and easier maintainability for authors.
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[4.4 Grouping content — HTML5( http://www.w3.org/TR/2014/REC-html5-20141028/gro … )]より
翻訳すると「注意:著者には、他に適切な要素がない時の最後の最後の手段としてDIV要素を使用することが強く推奨される。DIVでないより適切な要素を使用する事は、読者にはより良いアクセシビリティを著者にはメンテナンス性の向上につながる。」
DIVでは分からないので、私の経験からその質問に該当する事象として次の場面が思い浮かびます。
HTML5で表現すると、多分次のような場面だと思われます。
<body>
<header>文書のヘッダ</header>
<section>主文
<section>
項目記事
<nav>ナビゲーション目次</nav>
<aside>このsectionと直接関係ない記事</aside>
</section>
<section>
項目記事
<nav>ナビゲーション目次</nav>
<aside>このsectionと直接関係ない記事</aside>
</section>
・・・・・
</section>
<footer>この文書のフッタ</footer>
</body>
★HTMK5未満の場合は、<section></section>は<div class="section"></div>となっていたところです。
とすると、この質問は
「sectionごとのナビゲーションと関連記事を、そのsectionの右左に配置したいが、sectionが短い時に重なってしまう。それを重ならないようにしたい」
(対策)
1.左右に配置されるコンテンツの高さが分かっている場合、それが属するsectionのmin-heightを指定する。
┌─┐┌───┐┌─┐
│↑││ ↑ ││↑│
│固││min- ││固│
│定││height││定│
│↓││ ↓ ││↓│
└─┘└───┘└─┘
2.左右に配置されるコンテンツの高さが未定の場合は、overflow:autoなどでスクロールを提供する。
になるでしょう。
┌─┐┌───┐┌─┐
│↑││ ↑ ││↑↑
│未││ 未 ││未scroll
│定││ 定 ││定↓
│↓││ ↓ ││↓│
└─┘└───┘└─┘
別の状況でしたら、文書構造を分かるように指示してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlのolやulなどlistにtitleや...
-
ブログのサイドバーが下にくる
-
<div id="container">の使いか...
-
html divボックスの入れ子で中...
-
複数のボタンを等間隔に、かつ...
-
HEADタグとheaderタグ
-
開閉式の隠し要素が一瞬表示さ...
-
画面を縮小するとカラムが落ち...
-
div要素が重なってします
-
HTML属性での「""」 「''」違い
-
ヘッダーとフッターだけ背景を...
-
html の divとtable の役割
-
htmlの文字が縦書きになる
-
個別にリンクの色を変える方法
-
ボタンをセル内一杯に表示させ...
-
画像イメージの上下左右、欲し...
-
aの中にspan
-
含む含まないという概念自体の...
-
iframe 内の画像を自動縮小させ...
-
HRタグ 枠線を透明にするには?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlのolやulなどlistにtitleや...
-
HTML属性での「""」 「''」違い
-
html の divとtable の役割
-
複数のボタンを等間隔に、かつ...
-
スペースを使わず文字位置を揃...
-
<div id="container">の使いか...
-
ヘッダーとフッターだけ背景を...
-
1時間30分を簡単に表したいで...
-
<!-- #BeginLibraryItemとは
-
body>div{}の意味を知りたい
-
IEだとリンクされるが他ブラウ...
-
SEO対策のタイミングはHP作成前...
-
ウェブサイトの作成方法について
-
div要素が重なってします
-
IE10でホームページがもの凄く...
-
CSSについて教えてください...
-
スタイルシート<記述>
-
.レスポンシブウェブデザインに...
-
グリッドレイアウトで"auto-fit...
-
CSS(初歩的)な質問です…float...
おすすめ情報