強調と重要性

前回は、 HTML においてなぜ意味づけが重要なのか、また見出しと段落に焦点を当てて見ていきました。この記事では、意味づけというテーマを続け、テキストに強調や重要性を適用する HTML 要素を(印刷メディアにおけるイタリック体や太字のテキストと並べて)見ていきます。

前提条件: 基本的な HTML の構文に載っている、基本的な HTML に精通していること。
学習成果:
  • 強調や重要性ということの持つ意味、そして、HTML でそれを適用する基本要素である <em><strong>
  • 全く使用しなくなった表現用マークアップ(<big><font> など)を識別すること。これは非推奨です。
  • 新しい意味をもって再提案された表現用マークアップ(<i><b> など)を識別すること。

強調と重要性とは

人間の言語では、文の意味を変えるために特定の単語を強調することが多く、特定の単語を何らかの意味で重要または異なるものとしてマークしたい場面がよくあります。HTML は、そのような効果でテキストコンテンツをマークアップすることを可能にするためにさまざまなセマンティック要素を提供します。そしてこのセクションでは、最も一般的なもののいくつかを見ていきます。

強調

話されている言葉を強調したいときは、ある言葉を強調して、自分の言っていることの意味を微妙に変えます。同様に、書かれた言語では、イタリック体でそれらを置くことによって単語を強調する傾向があります。たとえば、次の 2 つの文は意味が異なります。

I am glad you weren't late.

I am glad you weren't late.

最初の文は、その人が遅刻しなかったことに純粋にほっとしているように聞こえます。これに対して 2 つ目の文は、 "glad" と "late" の両方が斜体になっており、相手が少し遅れてきたことに腹を立てている、嫌味な、あるいは受動的な表現に聞こえます。

HTML では、このようなインスタンスをマークアップするために <em> (強調)要素を使用します。文書を読みやすくするだけでなく、これらはスクリーンリーダーによって認識され、異なるトーンの音声で話されます。ブラウザーでは既定でイタリック体になっていますが、純粋にイタリック体にするだけの場合にはこのタグを使用しないでください。その場合は、 <span> 要素と CSS、あるいは <i> 要素(下記参照)を使用してください。

html
<p>I am <em>glad</em> you weren't <em>late</em>.</p>

重要性が高い

重要な言葉を強調するために、話し言葉でそれらを強調し、そして書面でそれらを 太字 にする傾向があります。例えば。

This liquid is highly toxic.

I am counting on you. Do not be late!

HTML では、このようなものをマークアップするために <strong> (強い重要性)要素を使用します。 この文書をより便利にするだけでなく、これらもスクリーンリーダーによって認識され、異なるトーンの音声で話されています。ブラウザーでは既定で太字のテキストとしてスタイル設定されていますが、太字のスタイルにするだけの場合にはこのタグを使用しないでください。そのためには、<span> 要素といくつかの CSS、あるいは <b> 要素(下記参照)を使用してください。

html
<p>This liquid is <strong>highly toxic</strong>.</p>

<p>I am counting on you. <strong>Do not</strong> be late!</p>

必要に応じて、 strong と em を相互に入れ子にすることができます。

html
<p>This liquid is <strong>highly toxic</strong> — if you drink it, <strong>you may <em>die</em></strong>.</p>

アクティブラーニング: 重要性を付け加えましょう

このアクティブラーニングセクションでは、編集可能な例を示しました。その中で、それらを必要としていると思う言葉に強調と強い重要性を付け加えてみてください。

イタリック、太字、下線…

これまで説明してきた要素には、明確に関連付けられた意味があります。<b><i><u> の状況はやや複雑です。CSS がまだ十分に対応されていないか、まったく対応されていなかった時代に、太字、斜体、下線付きのテキストを書くことができるように作られたものです。このような要素は表示にのみ影響を与え、意味には影響を与えない表示要素として知られていますが、もはや使用するべきではありません。これまで見てきたように、セマンティクスはアクセシビリティ、SEO などにとって非常に重要だからです。

HTML5 では <b><i><u> が新しい、やや混乱しやすい意味的な役割で再定義されました。

最適な経験則は次のとおりです。<b><i><u> を使用するのは、伝統的に太字、斜体、下線を使って意味を伝えてきたものを、より適切な要素がない場合のみで使用してください。通常はあるはずです。 <strong><em><mark><span> の方が適切ではないかどうか考えてみてください。

アクセシビリティの考え方を守ることは常に重要です。 イタリック体の概念は、スクリーンリーダーを使っている人、またはラテン系のアルファベット以外の書記体系を使っている人にとってはあまり役に立ちません。

  • <i> は、伝統的にイタリック体で伝えられた意味を伝えるために使われます:外来語、分類名、技術用語、考え...
  • <b> は、伝統的に太字で伝えられている意味を伝えるために使用されます。キーワード、製品名、リードセンテンス...
  • <u> は、下線で伝統的に伝えられている意味を伝えるために使用されます。適切な名前、スペルミス...

メモ: 人々は下線をハイパーリンクと強く関連付けています。したがって、ウェブ上では、リンクのみに下線を引くのが最善です。ウェブ上では、意味的に適切な場合は <u> 要素を使用しますが、 CSS を使用して既定の下線をより適切なものに変更することを検討してください。以下の例はその方法を示しています。

html
<!-- scientific names -->
<p>
  The Ruby-throated Hummingbird (<i>Archilochus colubris</i>) is the most common
  hummingbird in Eastern North America.
</p>

<!-- foreign words -->
<p>
  The menu was a sea of exotic words like <i lang="uk-latn">vatrushka</i>,
  <i lang="id">nasi goreng</i> and <i lang="fr">soupe à l'oignon</i>.
</p>

<!-- a known misspelling -->
<p>Someday I'll learn how to <u class="spelling-error">spel</u> better.</p>

<!-- term being defined when used in a definition -->
<dl>
  <dt>Semantic HTML</dt>
  <dd>
    Use the elements based on their <b>semantic</b> meaning, not their
    appearance.
  </dd>
</dl>

まとめ

強調と重要性の見方はひとまずこれで終わりです。次に、 HTML ではリストをどのように表すかを見ていきましょう。