noscript要素

概要

noscript要素はスクリプトが実行されない場合の代替内容を記述するための要素です。

要素の内容

ブロックレベル要素だけを子要素にすることができます(ただし、HTML4.01 Strictではscript要素を含むことはできません。また、HTML4.01 StrictとXHTML1.1では、一つ以上の要素を含む必要があります)。また、Transitional/Framesetでは普通のテキストとインライン要素も含むことができます。

属性

固有属性

この要素に固有の属性はありません。

汎用属性

id, class, title, langxml:lang), dir, style, xmlns(XHTML1.1のみ)

onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup

説明

noscript要素はスクリプトが実行されない場合の代替内容を記述するための要素です。スクリプトに対応していないか、スクリプトが無効に設定されているブラウザで利用されます。スクリプトが実行されるブラウザでは、要素の内容はレンダリング(描画)されません。

要素の内容

noscript要素の子要素になるのはブロックレベル要素だけです。普通のテキストを直接記述することはできません(Transitional/Framesetでは制約が緩くなっていますが)。そのため、スクリプトの代替内容はブロックレベル単位で記述することになります。

<!-- noscript要素の記述例 -->
<noscript>
  <p><!-- このようにブロックレベル要素で記述する。 --></p>
</noscript>

XHTML1.1での注意点

XHTML1.1のDTDでは、noscript要素をインライン要素として記述できるようになっています。しかし、要素の子要素にできるのはブロックレベル要素だけです。そのため、インライン要素の中にブロックレベル要素が入ることになりますが、このような事態は避けるべきでしょう。noscript要素はブロックレベル要素として記述するようにしてください。

関連要素