0

誰もそのような問題に答えることはできますか? ベクター グラフィックスを 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 が互換モードで動作しているときに他の条件が適用された場合、すべてが正常に動作します。

4

1 に答える 1

1

スタイル属性の引用符が一致していません

<v:roundrect style='width:100pt;height:75pt"

doctype に空白があります:

/xhtml1  /
于 2012-01-17T20:05:11.493 に答える