我想使用VML在IE中绘制形状。我想出了以下代码但它在IE8中没有显示任何内容..
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style>v\: * { behavior:url(#default#VML); display:inline-block }</style>
<xml:namespace ns="urn:schemas-microsoft-com:vml" prefix="v" />
</head>
<body>
<xml:namespace ns="urn:schemas-microsoft-com:vml" prefix="v"/>
<object id="VMLRender" codebase="vgx.dll" classid="CLSID:10072CEC-8CC1-11D1-986E-00A0C955B42E">
</object>
<v:rect style="width: 1in; height: 1in; left: 0.5in; top: 6in; rotation:0deg" fillcolor="#ffff00" strokecolor="#ff0000"/>
</body>
</html>
答案 0 :(得分:2)
<html xmlns:v="urn:schemas-microsoft-com:vml">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=5" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style>v\: * { behavior:url(#default#VML); }</style>
</head>
<body>
<v:rect style="width: 1in; height: 1in; left: 0.5in; top: 6in; rotation:0deg" fillcolor="#ffff00" strokecolor="#ff0000"/>
</body>
</html>
答案 1 :(得分:1)
在IE8中更改了VML:Changes in VML for IE8
答案 2 :(得分:1)
我强烈建议不要使用VML。
VML仅在IE中受支持。所有其他浏览器都支持SVG,即使在IE中,IE9现在支持SVG,并且只支持VML作为传统功能。
当然,如果您尝试支持IE 8及更早版本,那对您没有帮助,因为它们只有VML而不是SVG。但是,有许多Javascript库允许您使用SVG并将动态转换为VML for IE,这意味着您使用SVG,您可以编写适用于所有浏览器的代码。
这些库中最好的是Raphael。它是一个真正的跨浏览器矢量图形库,默认为SVG,但在需要的情况下回退到VML,并使用一致的工具集覆盖所有浏览器不一致性,对开发人员和用户都完全透明。
要考虑的另一个库是SVG2VML。还有一些其他你可以通过谷歌搜索找到。
希望有所帮助。