RUNTEQ 無料カウンセリング参加特典:30,000円割引(9月29日まで)| スキルアップ目的プラン:80,000円割引

ブロックレベル要素とインライン要素を初心者向けに徹底解説

4 min 21 views
ブロックレベル要素とインライン要素

~margin・paddingの違い、inline-blockまで~

はじめに

Web制作を学び始めると、必ず直面するのが 「ブロックレベル要素」「インライン要素」 の違いです。

  • 「divとspanの違いがよく分からない」
  • 「marginとpaddingってどう違うの?」
  • 「インライン要素に幅や高さを指定しても効かないのはなぜ?」

これらは初心者が必ずつまずくポイントです。

さらに、近年のWeb開発では FlexboxやGrid といったレイアウト技術もよく使われるため、より正確な理解が必要です。

この記事では、ブロック要素とインライン要素の基本 → margin/paddingの違い → inline-blockの活用 までをわかりやすく解説します。

ブロックレベル要素とは

ブロックレベル要素は、「箱」や「段落」としてページを構成する要素です。

 主な特徴

  • 横幅いっぱいに広がる
  • 前後に自動で改行が入る
  • margin/paddingが上下左右すべて有効
  • ページの構造を形づくる

👉 例:<div> <p> <h1> <section> <article>

 実際のモノに例えると

ノートの「段落」や「章」がブロック要素。

文章が整理されて読みやすくなるのと同じ役割を担います。

インライン要素とは

インライン要素は、文字や小さなパーツとして流れの中に存在する要素です。

 主な特徴

  • 前後に改行が入らない
  • 横方向のmargin/paddingは有効だが、上下は効きにくい
  • 主に文字の装飾やリンクに利用

👉 例:<span> <a> <strong> <em> <img>

 実際のモノに例えると

文章の中で強調する「マーカー」や「太字」。

文章全体の流れを止めずに、一部だけ装飾したいときに使います。

marginとpaddingの違い

CSSでよく使う marginpadding

どちらも「余白」を作りますが、効く場所が違うため初心者が混乱しやすいポイントです。

用語定義影響範囲borderとの位置関係
margin要素の外側にできる余白他の要素との間隔を作るborderの外側
padding要素の内側にできる余白コンテンツと枠線の距離を作るborderの内側

 わかりやすいイメージ

  • margin … 「要素と要素の間の空間」。border(枠線)の外にできる余白なので、隣のボックスを押しのける力を持ちます。
  • padding … 「要素の内側のクッション」。border(枠線)の内側にできる余白なので、文字や画像を枠線から離す効果があります。

 具体例でイメージを深める

たとえば下のようなボックスを考えてみましょう。

.box {
  width: 200px;
  border: 3px solid blue;
  margin: 20px;
  padding: 15px;
}
  • margin:20px → ボックスの外側に20pxの余白ができ、周りの要素との間隔が広がります。
  • padding:15px → ボックス内のテキストが枠線から15pxだけ離れ、読みやすくなります。

👉 borderを境目に、外ならmargin、内ならpadding と覚えると混乱しにくいです。

 よくある間違いと注意点

  1. 「上下の余白が効かない」現象
    • インライン要素に margin-topmargin-bottom を指定しても反映されないことがあります。
    • 解決策:display:inline-block; を指定する。
  2. marginの相殺(collapse)
    • ブロック要素を縦に並べると、上下のmarginが「重なって」思ったより広くなる。
    • 解決策:親要素に padding をつけるか、overflow:hidden; を指定する。

ブロック要素一覧(HTML5以降)

要素用途・説明
<div>汎用のブロック要素
<p>段落
<h1><h6>見出し(SEO重要)
<header>ヘッダー部分
<footer>フッター部分
<section>コンテンツの区切り
<article>独立した記事やコンテンツ
<aside>補足情報(サイドバー等)
<nav>ナビゲーション
<main>ページの主要部分
<form>入力フォーム
<ul> <ol> <li>リスト
<table>
<figure>画像や図表のまとまり
<blockquote>引用
<address>連絡先情報

インライン要素一覧(HTML5以降)

要素用途・説明
<span>部分的な装飾
<a>リンク
<strong>強調(SEOに有効)
<em>斜体による強調
<b>見た目の太字
<i>見た目の斜体
<u>下線
<mark>蛍光ペン風の強調
<time>時刻・日付
<code>ソースコード
<img>画像
<input>入力欄
<label>フォームラベル
<abbr>略語
<br>改行
<small>小さな文字
<sup> <sub>上付き・下付き文字

inline-blockという便利な選択肢

「インライン要素に幅や高さをつけたいけど効かない…」というときに役立つのが display:inline-block; です。

 特徴

  • インライン要素のように横並びにできる
  • ブロック要素のように幅や高さを指定できる
<style>
.inline-box {
  display:inline-block;
  width:120px;
  height:50px;
  margin:10px;
  padding:10px;
  border:1px solid #333;
}
</style>

<div class="inline-box">Box1</div>
<div class="inline-box">Box2</div>
<div class="inline-box">Box3</div>

👉 横並びで整列しつつ、margin・padding・width・heightも有効になります。

SEO観点でのまとめ

検索エンジンは「意味」を理解するためにHTMLを解析しています。

  • <h1> はページのタイトル
  • <article> は記事全体
  • <strong> は強調されたキーワード
  • <nav> はナビゲーションメニュー

👉 正しい要素を使うことで、SEOの評価が高まり、検索順位にも良い影響を与えます。

総まとめ

  • ブロック要素はページの構造を作る箱
  • インライン要素は文章の一部を装飾する
  • marginは外側、paddingは内側の余白
  • inline-blockを使えば両者のいいとこ取りが可能
  • SEO的にも正しいタグ選びは重要

初心者の方は、まず「divは箱、spanは文字の一部」と覚えるところから始め、少しずつ inline-block → Flexbox → Grid と進むと理解が深まります。

関連記事