誰もそのような問題に答えることはできますか? ベクター グラフィックスを HTML に挿入しようとしています。実際、私の場合は必要ないので、今のところ単純な画像に頼るかもしれませんが、問題に遭遇したため、解決できませんでした。何がうまくいかないのかを定義することは非常に興味深く、将来に関連するものになりました。ちなみに、VML は私にとってまったく新しいものです。
いくつかの vml 要素をページに挿入しようとしましたが、そのうちのいくつかは (IE6、IE7 で) 完全に機能しました。つまり、"oval"、"rect" です。しかし、シェイプまたはラウンドレクトを挿入しようとすると、すべてがうまくいきませんでした。
実際の質問は次のとおりです: IE6、IE7 で十分な VML サポートがあるか、または私が間違っていることはありますか? しかし、コードを調べた限りでは、すべてが正しいです。以下にサンプルを置いて、誰もが IE ブラウザーでこれをテストできるようにします。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1 /DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>sample</title>
<style>
v\:* { behavior: url(#default#VML); display:inline-block}
#div1 {
width:400px;
height:400px;
background-color:#e4fe56;
}
</style>
</head>
<body>
<div id="div1">
<v:shape style='width:100px;height:100px' fillcolor="red" path="m 0,0 l 30,0,30,30 xe" />
<v:rect style='width:100pt;height:75pt' fillcolor="blue" strokecolor="red" strokeweight="3.5pt"/>
<v:roundrect style='width:100pt;height:75pt" arcsize="0.3" fillcolor="yellow" strokecolor="red" strokeweight="2pt"/>
</div>
</body>
</html>
さらに、厳密モードでのみ発生することがわかりました。DOCTYPE が削除された場合、または IE が互換モードで動作しているときに他の条件が適用された場合、すべてが正常に動作します。