![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.1ベストアンサー
- 回答日時:
1:別々の線なので1本にはなりません。
2:https://www.google.co.jp/search?q=%E3%83%9C%E3%8 …
ちなみに「padding」…「d」ですよ。
3:divとdivのスペースだろうが「<div>でくくられたブロックと<div>でくくられたブロックのスペース」だろうが、そんなものはお好きにどうぞ。
No.3
- 回答日時:
>質問1
border-left-width: 0
などとして片方を消せば、1本になります。
太くなるのであれば、それは重なっていません。となりに並んでいます。
ちゃんと重ねれば1本分の太さで表示されます。
No.2
- 回答日時:
HTMLを基礎からやり直すこと!!!
divでレイアウトと言う考え方は、HTMLにはありません。
スタイルシートの説明サイトなどでよく使われている言い回しですが、それはdivをレイアウトすることについての説明で、レイアウトするためにdivを書くのではありません。似ているようですが、根本的に違うのですよ。・・・この最初の出発点を間違うから、分かりにくくなるのです。小さなことのようですが、上達には欠かせません。
スタイルシートでデザインする(プレゼンテーションを指定する)のは、「構造とプレゼンテーションの分離( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」のためです。そうすることで「広汎なプラットフォームや多様なメディアでの文書提供コストを低下でき、文書の改訂も容易になる」からです。デザインのためにDIVを書いていたら『文書は複雑になり、ユーザーの制約も、改訂も難しくなります。』
★DIV要素とSPAN要素は、id属性及び class属性と併用することで、文書に構造を付加するための一般機構を提供する。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )
デザインではなく、用意されている要素(タグ)では足りないので、DIVを使うのです。
その文書構造を元にスタイルシートを書くのです。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
(注)HTML4.01のこの↑部分が理解されたとは言いがたく、HTML5では『文書をよりよく構造化するために、( http://standards.mitsue.co.jp/resources/w3c/TR/h … )』、文書構造を示すための要素が追加されました。header,section,footer,nav,asideなど・・。言い換えれば、DIVは、これらをclass名にすべきだと言うこと。
さて、本題です。
例えば、次のようなHTMLがあったとします。
<div class="section">
<h2>本文見出し</h2>
<div class="section">
<h3>1章見出し</h3>
<p>
ここからひとつの段落文章。
</p>
<p>
ここからひとつの段落文章。
</p>
</div>
<div class="section">
<h3>2章見出し</h3>
<p>
ここからひとつの段落文章。
</p>
</div>
</div>
ここで、サブセクションの周囲にborderを引き、かつh3の周囲にもボーダーを引いて、
┌────┐
│章見出し│
├────┤
│段落文章│
│段落文章│
│段落文章│
└────┘
┌────┐
│章見出し│
├────┤
│段落文章│
│段落文章│
│段落文章│
└────┘
とデザインしたいとします。この場合、見出しや段落<p></p>には、ブラウザの元々持っているスタイルシートに上下にマージンがありますから、
div.section div.section,
div.section div.section h3{
border:solid 1px gray;
}
とすると・・・。
┌────┐
┠────┨
┃章見出し┃縦が二重
┠────┨
│段落文章│
│段落文章│
│段落文章│
┣━━━━┫二重
┠────┨
┃章見出し┃
┠────┨
│段落文章│
│段落文章│
│段落文章│
└────┘
となってしまうはずです。
そこで
div.section div.section{
border:solid 1px gray;
}
div.section div.section h3{
border-bottom:solid 1px gray;/* h3には下にだけborder */
margin:0;/* marginは0にして */
padding:0.5em 1em;/* 代わりにpadding */
}
div.section div.section p{
margin:0.1em 1em;
text-indent:1em;
line0height:1.6em;
}
/*★ */
div.section div.section+div.section{
margin-top:1em;/* 2段目以降は上との隙間を空ける。 */
}
・・・ふたつのサブセクションをくっつけたいなら★部分は
div.section div.section+div.section{
margin-top:0;
border-top-width:0;
}
とすれば、くっついて、上のborderが引かれません。
全サンプル
⇒コンテンツとコンテンツの詰まり( http://oshiete.goo.ne.jp/qa/8308855.html )
も参考に!!
★Another HTML-lint 5( http://www.htmllint.net/html-lint/htmllint.html )
のDATA入力(右上)でチェック済み
★タブは_に置換してあるので戻す。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
_<meta http-equiv="content-type" content="text/html; charset=Shift_JIS">
_<title>サンプル</title>
_<meta name="author" content="ORUKA1951">
_<meta http-equiv="Content-Style-Type" content="text/css">
_<link rev="made" href="mailto:oruka1951@hoge.com" title="send a mail" >
_<link rel="START" href="../index.html">
_<style type="text/css">
<!--
div.section div.section{
border:solid 1px gray;
}
div.section div.section h3{
border-bottom:solid 1px gray;
margin:0;
padding:0.5em 1em;
}
div.section div.section+div.section{
margin-top:1em;
}
div.section div.section p{
margin:0.1em 1em;
text-indent:1em;
line0height:1.6em;
}
/* 下のコメントをはずすとサブセクションがくっつく */
/*
div.section div.section+div.section{
margin-top:0;
border-top-width:0;
}
-->
_</style>
</head>
<body>
_<div class="header">
__<h1>タイトル</h1>
__<p>このページでは・・・・</p>
_</div>
_<div class="section">
__<h2>本文見出し</h2>
__<div class="section">
___<h3>1章見出し</h3>
___<p>
____ここからひとつの段落文章。
___</p>
___<p>
____ここからひとつの段落文章。
___</p>
__</div>
__<div class="section">
___<h3>2章見出し</h3>
___<p>
____ここからひとつの段落文章。
___</p>
__</div>
_</div>
_<div class="footer">
__<h2>文書情報</h2>
__<dl class="documentHistry">
___<dt id="FIRST-PUBLISHED">First Published</dt>
___<dd>2012-08-10</dd>
___<dt id="LAST-MODIFIED">Last Modified</dt>
___<dd>2012-08-10 12:00:00 (JST)</dd>
__</dl>
__<address>© ORUKA1951 2012 - 2016 All Rights Reserved mailto:*****</address>
_</div>
</body>
</html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS CSSがなぜかfont-sizeだけ効かない...記述がまちがっているんでしょうか 5 2022/04/09 17:52
- HTML・CSS flex の各子要素を横幅 100% にしたい 1 2022/09/22 21:25
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- HTML・CSS 要素の幅をいろんな写真の幅に合わせたい。 1 2022/07/25 20:11
- HTML・CSS CSS の疑問です 1 2023/02/15 18:13
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- HTML・CSS HTML、cssのatomつぅーやつで 課題Ex1ってやつを表示させたいのですが、 私は課題Ex1が 2 2022/12/15 16:56
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlのolやulなどlistにtitleや...
-
<div id="container">の使いか...
-
1サイト内にHTML5とXHTMLが混在...
-
HTML属性での「""」 「''」違い
-
htmlの見出しタグ(<h1>)の次...
-
グリッドレイアウトで"auto-fit...
-
CSS 背景色が下まで伸びません
-
セクションをdivで囲むと見出し...
-
CSSで、contentsがfooterに重な...
-
hタグの右横に画像を表示
-
html の divとtable の役割
-
li、ol、ulなどで構成されてい...
-
divとpの使いわけ
-
<div>テキスト</div>
-
div要素が重なってします
-
htmlの文字が縦書きになる
-
HRタグ 枠線を透明にするには?
-
form input テキストを上下中央...
-
含む含まないという概念自体の...
-
textareaの幅を画面と合わせたい
マンスリーランキングこのカテゴリの人気マンスリー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
おすすめ情報