XHTML 1.0 StrictやXHTML 1.1ではいくつかの要素・属性が廃止されている。これらは「非推奨要素・属性」と呼ばれ、主に視覚表現に関するものであるため、シンプル&クリーンなXHTMLのためには使わないほうがよい。前回に引き続き、非推奨要素の代替方法を見ていこう。

7. iframe要素

 iframe要素(インラインフレーム)は、object要素で代替する。

[XHTML 1.0 Transitional/Frameset]
<iframe src="refer.html" title="参照ページ"width="300" height="300">
参照ページ
</iframe>

[XHTML 1.0 Strict/1.1]
<object data="refer.html" title="参照ページ" width="300" height="200">
参照ページ
</object>

 iframe要素ではsrc属性で外部文書を指定するが、object要素ではこのようにdata属性で指定する。

8. isindex要素

 isindex要素(ページ内のキーワード検索フィールド)は、その機能をそのまま代替する方法は存在しないが、通常form要素とinput要素(および必要な機能を備えたスクリプト)で代替する。

[XHTML 1.0 Transitional/Frameset]
<head>
  <isindex prompt="キーワードを入力" />
</head>

[XHTML 1.0 Strict/1.1]
<form action="/cgi-bin/search.cgi" method="post">
  <p>
    <input type="text" value="キーワードを入力" size="22" />
    <input type="submit" value="検索" />
  </p>
</form>

 なお、isindex要素は、head要素の範囲内に記述することで、ページの最上部に自動的に「キーワード検索フィールド」を挿入するものであるが、一般にはあまり使われない。

9. menu要素

 menu要素(メニュー型リスト)は、ul要素で代替する。

[XHTML 1.0 Transitional/Frameset]
<menu>
  <li>項目1</li>
  <li>項目2</li>
  <li>項目3</li>
</menu>

[XHTML 1.0 Strict/1.1]
<menu>
  <li>項目1</li>
  <li>項目2</li>
  <li>項目3</li>
</menu>

 なお、menu要素はもともと、多くのブラウザでul要素と同じように表示されるため、一般にはあまり使われない要素である。

10. s、strike要素

 s要素とstrike要素(取り消し線)は、削除文を意味するのであればdel要素で代替する。装飾目的であれば、id/classを割り当てたspan要素に対して、CSSのtext-decorationプロパティで「line-through」を適用して代替する。

[XHTML 1.0 Transitional/Frameset]
<strike>テキスト</strike></code>
</pre></td>
</tr>
</table>


<table border="0" cellpadding="0" cellspacing="0">
<tr> 
<td class="list_gray"><pre><code>[XHTML 1.0 Strict/1.1]
<del>テキスト</del>

または

span.delete {
  text-decoration: line-through;
  }
 :
 :
<span class="delete">テキスト</span>

11. u要素

 u要素(下線)は、強調を意味するのであればem要素やstrong要素で代替する。装飾目的であれば、id/classを割り当てたspan要素に対して、CSSのtext-decorationプロパティで「underline」を適用して代替する。

[XHTML 1.0 Transitional/Frameset]
<u>テキスト</u>

[XHTML 1.0 Strict/1.1]
<em>テキスト</em>

または

span.uline {
  text-decoration: underline;
  }
 :
 :
<span class="uline">テキスト</span>

 なお、Webデザイン上は、強調と装飾のいずれであっても、通常のテキストに下線を引くのはやめたほうがよい。なぜなら、一般的なブラウザではリンクテキストにデフォルトで下線が引かれるため、他のテキストに下線が引かれていると、リンクテキストと見間違ってしまう恐れがあるからだ。

 また、漢字や平がな、カタカナのグリフ(字形)は、アルファベットに比べて複雑であり、下線が引かれていると読みにくいという日本語環境特有の問題もある。

非推奨要素の代替方法まとめ

 最後に、前回、今回で説明した非推奨要素の代替方法をまとめておこう。

 では、次回からは非推奨属性の代替方法を解説する。


益子貴寛(ましこ たかひろ)
サイバーガーデン代表(http://www.cybergarden.net/)。Webプロデューサー。早稲田大学大学院商学研究科修了。大学院在学中の1999年5月にWebリファレンス&リソース提供サイト「CYBER@GARDEN」を立ち上げる。一般企業に就職後もWebデザイン誌での執筆やW3C仕様書の翻訳活動を続け、2003年5月に独立。Webサイトのプロデュース、Web制作会社のコンサルティング活動などに従事。Webデザイン、Web標準、(X)HTML+CSS、Webディレクション、Webライティング、アクセシビリティ、SEO/SEM、XMLアプリケーションに関する執筆・講義など多数。著書に『Web標準の教科書─XHTMLとCSSで作る“正しい”Webサイト』(秀和システム刊)、『伝わるWeb文章デザイン100の鉄則』(同刊)。