9.1 ブロック要素
HTMLのブロックモデルは、ドキュメント内のHTML要素の構造と表示を説明するコンセプトだよ。開発者が要素同士のやり取りやページ上の配置を理解するのに役立ってる。ブロックモデルを理解することは、構造がしっかりしていて美しいウェブページを作るために重要なんだ。
HTMLのブロックモデルは、主に2つのタイプの要素から成ってるんだ:ブロック要素とインライン要素だよ。これらの要素はウェブページのレイアウトで重要な役割を果たしてるんだ。
ブロック要素
HTMLタグ | 説明 |
---|---|
<div> |
他の要素をグループ化するための基本的なコンテナだよ。 |
<p> |
テキストの段落。 |
<h1> – <h6> |
さまざまなレベルの見出し。 |
<ul> , <ol> |
番号なしリストと番号付きリスト。 |
<li> |
リスト要素。 |
<section> |
ドキュメントのセクション用のセマンティックコンテナ。 |
<article> |
独立したコンテンツのブロック。 |
<aside> |
メインコンテンツに関連した内容(サイドバー)。 |
<header> |
ページやセクションの導入部またはナビゲーション部分。 |
<footer> |
ページやセクションのフッター。 |
<nav> |
ナビゲーション用のリンク。 |
<main> |
ドキュメントのメインコンテンツ。 |
ブロック要素の例:
HTML
<div>
<h1>見出し</h1>
<p>これはdivブロック要素内のテキストの段落です。</p>
</div>
9.2 インライン要素
インライン要素 (inline-level elements) はその内容に必要な幅だけを占めて、新しい行から始まらないんだ。インライン要素かテキストのみを含むことができるよ。インライン要素の例を見てみよう:
HTMLタグ | 説明 |
---|---|
<span> |
インラインコンテンツをグループ化するための基本的なコンテナ。 |
<a> |
ハイパーリンク。 |
<strong> , <b> |
テキストの強調(太字)。 |
<em> , <i> |
テキストの強調(斜体)。 |
<img> |
画像の挿入。 |
<code> |
コードの強調。 |
<label> |
ラベルとフォーム要素の関連付け。 |
<input> , <select> , <textarea> |
フォーム要素。 |
インライン要素の例:
HTML
<span>これは<strong>太字のテキスト</strong>と<em>斜体テキスト</em>がある段落です。</span>
9.3 ブロックモデルの構成要素
ブロックモデルの各要素は、次の部分から成る長方形のブロックとして表現できるんだ:
- コンテンツ (Content): 要素内のコンテンツ、例えばテキストや画像
- 内側の余白 (Padding): コンテンツと要素の境界の間のスペース
- 境界 (Border): 内側の余白とコンテンツを囲む線
- 外側の余白 (Margin): 要素の境界と隣接する要素の間のスペース
ブロックモデルの視覚化:
CSS
.element {
width: 200px; /* コンテンツの幅 */
padding: 10px; /* 内側の余白 */
border: 2px solid red; /* 境界 */
margin: 20px; /* 外側の余白 */
}
ブロックモデル付きのHTMLの例:
この例では、クラスが "box" の <div>
要素は幅200px、内側の余白10px、境界2px、外側の余白20pxを持ってるんだ。これらのプロパティは、要素がページ上でどのように表示されるか、他の要素とどのように相互作用するかを決定しているよ。
CSS
.box {
width: 200px;
padding: 10px;
border: 2px solid red;
margin: 20px;
}
HTML
<div class="box">
これはブロックモデルの例です。
</div>
GO TO FULL VERSION