主な違いは
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
ブラウザにクァークズモードを使用させます。IEは、クァークズモードのSVGをサポートしていません。
一方
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
ブラウザをほぼ標準モードにします。
次のようにシステム識別子を追加するだけで、DoctypeをIE9でSVGを非常に簡単にレンダリングするものに変えることができます。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
これがIE10で機能するかどうかはわかりませんが、IE10がHTML5 doctype解析ルールに準拠している場合、上記のdoctypeでもクァークズモードが発生するため、SVGがレンダリングされない可能性があります。
HTML 4.0は、W3C勧告として13年以上前の1999年にHTML 4.01に置き換えられたため、使用する必要のある絶対最小Doctypeは次のとおりです。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
これにより、前述のXHTML doctypeと同じように、HTML5準拠のブラウザーでほぼ標準モードが発生します。しかし、それはHTML3.2からサイトを切り替える人々を対象としていました。
サイトが標準モードで動作することを確認することをお勧めします。これは、次のようなHTML4.01の厳密なDoctypeを使用して行うことができます。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
これは現在のW3C勧告ですが、覚えておくのはまだ少し長いです。ブラウザを標準モードにするのと同じ仕事をする最短の文字列は
<!DOCTYPE HTML>
これが、HTML5以降のドキュメントで使用するために選択された理由です。