ダイナミックHTML

ダイナミックHTML（、DHTML）は、静的なHTMLの内容をCSSと等のクライアントサイドスクリプト言語を用いて動的に変更するウェブ技術を指す抽象概念である。

視覚的な訴求効果の高いHTMLドキュメントを作成できるなどとして、1997年に起こったネットスケープとマイクロソフトのブラウザ戦争で生まれた。

背景
1997年当時は  からHTMLを参照、制御する方式が各社不統一であり、ウェブブラウザごとに別々の  を書く必要があった。この状況を打開すべく1998年10月にW3Cはクライアントサイドスクリプト言語とHTMLドキュメントの緩衝材としての役割を果たす （DOM）を勧告した。これによりDOMをサポートする新型のブラウザ（ 5.0 や、 6.0、、 7.0 など）であれば、ブラウザを問わずひとつの記述で HTMLドキュメントを参照、制御できるようになった。登場当初は応用方法が分からず、単なる飾りとして使われていたが、2005年のAjaxの提唱前後にWebアプリケーションの構築手法として広く用いられるようになった。

（HTA）はダイナミックHTMLの機能を利用して  のアプリケーションを作成する仕組みである。ダイナミックHTMLの登場によってインタラクティブなウェブページを容易に作成できるようになったが、HTAはそれらの仕組みを通常のアプリケーションの作成に応用する試みである。HTAの作成は、単にHTMLファイルの拡張子を「.hta」にするだけである。ダイナミックHTMLに対するHTA固有の拡張はHTA:APPLICATION要素、ActiveXやローカルファイルへのアクセスに制限がないことなどである。実行には  5.0 以上が必要である。

、ファイルのフルパスにパソコンのアカウント名などの隠蔽したい情報が含まれている場合には注意が必要である。

 から搭載されたでは、という小型のアプリケーションを実行することができる。 は HTML、CSS、 を用いたものである。HTMLとスタイルシートで外観を定義し、 でそれを制御するというもので、一足早く登場した  というソフトウェアで実現されていた機能に似ている。ただし、正確に言えば  そのものは、 から搭載されたウィンドウ一覧表示機能、の拡張であり、 は普段は隠れている点、インターフェースなどの記述に用いるマークアップ言語などが  とは異なる。また  制御のパッケージは  の後続技術である。Widgetの内部からはネットワーク接続を行ったり、各アプリケーションにイベントを送信したり、アプリケーションやシェルスクリプトなどを実行することが可能になる。

関連項目
XUL
 (XAML)
Ajax

外部リンク
標準に準拠したDHTML
DOMを利用した3Dアニメ（2004年12月6日時点のアーカイブ）
（2004年9月27日時点のアーカイブ） - 
互換性の無いDHTML
[https://web.archive.org/web/20041204092222/http://developer.netscape.com/tech/dynhtml/ （2004年12月4日時点のアーカイブ） - 
（2005年3月11日時点のアーカイブ） - MSDN

Category:HTML