HTML・情報を整理する

まとまりを作ろう(divとspan)

それ自体に意味はないけれど、いくつかのタグを“ひとまとまり”にする箱。divとspanは、あとで飾るための下ごしらえ。

これまでのタグは、見出し・段落・画像……と、それぞれ「意味」を持っていました。今回のふたつ、<div><span> は、ちょっと変わり者。それ自体に特別な意味はなく、「まとめる」ためだけのタグです。

divは大きなまとまり

<div> は、複数のタグをまるっと囲んで、ひとつのグループにします。

<div>
  <h2>お店について</h2>
  <p>朝10時から夜8時まで営業しています。</p>
</div>
divで囲んでも見た目は変わりませんが、見出しと段落が1つのまとまりになっています

この <div> は、見た目には何も変えません。でも「見出しと段落を、ひとつの“お店紹介ブロック”としてまとめた」というかたまりができます。あとで「このブロックだけ背景を灰色に」といった飾りつけが、まとめてできるようになるのです。

spanは文中のひとつまみ

<span> は、文章の一部分だけをつまむための箱。行を変えずに、その場でひとつまみします。

<p>今日の空は<span>とても青い</span>です。</p>
spanで囲んでも行は変わらず、見た目もそのまま。文中の一部をつまんでいるだけ

これも見た目は変わりません。でも「“とても青い”の部分だけ、あとで色を変えたい」というとき、<span> で囲んでおけば狙い撃ちできます。

2つのちがいをくらべる

似ているようで、囲んだあとのふるまいがちがいます。ならべてみましょう。

<div><span>
囲む相手見出し・段落などタグのかたまり文章の一部分
行のあつかい前後で行が変わる(ブロック)行はそのまま(インライン)
使いどころ紹介ブロック、カードのもと文中の色変え、名前の強調

「囲みたいものが、かたまりか、ひとつまみか」で選べば迷いません。

箱の中に箱を入れる

<div> は、中にさらに <div> を入れられます。大きな箱の中に、小さな箱をしまうイメージです。

<div>
  <h2>お店について</h2>
  <div>
    <p>朝10時から夜8時まで営業しています。</p>
    <p>水曜日はおやすみです。</p>
  </div>
</div>
箱を入れ子にしても見た目は変わりません。中身が上から下へ順に並んでいるだけです

入れ子が深くなるほど、開きタグと閉じタグの対応がずれやすくなります。中身を一段ずつ字下げして書くと、どの </div> がどの <div> の閉じなのか、見た目でわかるようになります。

CSSクラスで“狙って”飾るまとめた箱に名前をつけて、CSSで狙い撃ちする方法は、CSSコースのこのレッスンで登場します

このレッスンのまとめ

  1. <div> はいくつかのタグをブロックごとまとめる箱
  2. <span> は文章の一部だけをつまむ箱
  3. どちらも意味は持たない——「あとで飾るための目印」

やってみよう:じこしょうかいをまとめる

しまちゃんのページで、<div><span> をひとつずつ使ってみましょう。あいさつ見出しの名前だけを <span> でつまみ、じこしょうかいの見出しと段落を <div> でまとめます。

<h1>こんにちは、<br><span>しまちゃん</span>です。</h1>

<div>
  <h2>じこしょうかい</h2>
  <p>こんにちは! しまちゃんといいます。おえかきするのがだいすきで、しゅうまつはよくラーメンをたべにいきます。</p>
</div>

<h1> はすでに書いたあいさつ。名前の「しまちゃん」だけを <span> で囲んでおくと、あとでCSSでそこだけ色を変えられます。じこしょうかいを囲んだ <div> は、/goal の白いカードのもと——このまとまりに色をつけたものです。

どちらも見た目はまだ変わりません。いまは目印を置くだけでOKです。

よくある質問

divとspanの違いはなんですか?
divは前後で行が変わり、上から下へ積まれるブロックの箱。spanは行を変えず、文章の流れの中におさまるインラインの箱です。かたまりで囲むならdiv、文中の一部分ならspanと使い分けます。
divの中にdivを入れてもいいですか?
大丈夫です。箱の中に小さな箱を入れるように、divは何段でも入れ子にできます。ただし閉じタグの対応がずれやすいので、字下げをそろえて書くのがコツです。
divばかり使うのはよくないですか?
見出しには見出しタグ、段落には段落タグのように、意味のあるタグで書けるならそちらが優先です。divとspanは、ぴったりの意味を持つタグが無いときのための箱と考えましょう。