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

21. (table要素)align、bgcolor属性

 table要素のalign属性は、値が「left」「right」の場合はCSSのfloatプロパティで、値が「center」の場合はmargin-leftとmargin-rightプロパティで「auto」と指定して代替する。bgcolor属性は、background-colorプロパティで代替する。

[XHTML 1.0 Transitional/Frameset]
<table summary="Web用語の一覧表。1列目が用語、
2列目が説明" align="left" bgcolor="#ffffcc">

[XHTML 1.0 Strict/1.1]
table {
float: left;
background-color: #ffffcc;
}

22. (td、th要素)bgcolor、width、height、nowrap属性

 td、th要素のbgcolor属性は、CSSのbackground-colorプロパティで代替する。width属性はwidthプロパティで、height属性はheightプロパティで、nowrap属性はwhite-spaceプロパティで「nowrap」と指定して代替する。

[XHTML 1.0 Transitional/Frameset]
<td bgcolor="#ffffff" width="50" height="25" nowrap="nowrap">

[XHTML 1.0 Strict/1.1]
td {
background-color: #ffffff;
width: 50px;
height: 25px;
white-space: nowrap;
}

23. (tr要素)bgcolor属性

 tr要素のbgcolor属性は、CSSのbackground-colorプロパティで代替する。

[XHTML 1.0 Transitional/Frameset]
<tr bgcolor="#ffffff">

[XHTML 1.0 Strict/1.1]
tr { background-color: #ffffff; }

 なお、ブラウザによっては、tr要素に対するスタイル指定がうまく効かないので、多少面倒だがclassを割り当てたtd、th要素にスタイルを適用したほうがよいだろう。

24. (ul要素)compact、type属性

 ul要素のcompact属性には代替する方法はない。type属性は、CSSのlist-style-typeプロパティで代替する。

[XHTML 1.0 Transitional/Frameset]
<ul type="square">
<li>項目1</li>
<li>項目2</li>
<li>項目3</li>
</ul>

[XHTML 1.0 Strict/1.1]
ul { list-style-type: square; }

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

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

非推奨属性 代替方法
(ほぼすべての要素) lang属性 xml:lang属性
(ただし、XHTML 1.0ではlang属性とxml:lang属性の両方を指定)
(a要素) name属性 id属性
(ただし、XHTML 1.0ではname属性とid属性の両方を指定)
target属性 なし
(area要素) target属性 なし
(body要素) text属性 colorプロパティ
bgcolor属性 background-colorプロパティ
background属性 background-imageプロパティ
link属性 a要素に:link擬似クラスでcolorプロパティを指定
vlink属性 a要素に:visited擬似クラスでcolorプロパティを指定
alink属性 a要素に:active擬似クラスでcolorプロパティを指定
(br要素) clear属性 親要素であるブロックレベル要素にclearプロパティを指定
(caption要素) align属性 caption-sideプロパティ
(div要素) align属性 text-alignプロパティ
(form要素) name属性 id属性
(h1~h6要素) align属性 text-alignプロパティ
(hr要素) align属性 margin-leftとmargin-rightプロパティ
noshade、size属性 borderプロパティ
width属性 widthプロパティ
(html要素) version属性 文書型宣言
(img要素) align属性 vertical-alignまたはfloatプロパティ
border属性 borderプロパティ
hspace、vspace属性 marginプロパティ
name属性 id属性
(input要素) align属性 vertical-alignまたはfloatプロパティ
(legend要素) align属性 なし
(li要素) type属性 list-style-typeプロパティ
value属性 なし
(link要素) target属性 なし
(map要素) name属性 id属性
(ただし、XHTML 1.0ではname属性とid属性の両方を指定)
(object要素) align属性 vertical-alignまたはfloatプロパティ
border属性 borderプロパティ
hspace、vspace属性 marginプロパティ
(ol要素) compact属性 なし
start属性 なし
type属性 list-style-typeプロパティ
(p要素) align属性 text-alignプロパティ
(pre要素) width属性 widthプロパティ
(script要素) language属性 type属性
(table要素) align属性 floatプロパティまたはmargin-leftとmargin-rightプロパティ
bgcolor属性 background-colorプロパティ
(td要素) bgcolor属性 background-colorプロパティ
width属性 widthプロパティ
height属性 heightプロパティ
nowrap white-spaceプロパティで「nowrap」と指定
(th要素) bgcolor属性 background-colorプロパティ
width属性 widthプロパティ
height属性 heightプロパティ
nowrap white-spaceプロパティで「nowrap」と指定
(tr要素) bgcolor属性 background-colorプロパティ
(ul要素) compact属性 なし
type属性 list-style-typeプロパティ