我正在绘制ASP.NET Web应用程序中的图形。在IE9和其他浏览器中,我使用SVG来完成它,并且它工作得很好。在IE8及以下版本中,我使用VML。我发现当IE8标准模式下(不使用兼容性视图)IE8不显示VML。IE9,IE8,SVG,VML和doctypes
我的文档类型设置为<!DOCTYPE html>
。如果我将文档类型完全删除,IE8进入怪癖模式并且工作正常,但是IE9然后去其怪癖模式(而不是IE9标准)并且不显示SVG。
这是发生在测试页面上,所以除了包含包含<svg>
元素及其子元素或VML元素的div的表单之外,没有任何内容。
这是怎么回事?似乎我不应该为不同的浏览器更改文档类型,并且Stack Exchange用户页面上的信誉图似乎以相同的方式工作(针对IE8及更低版本的VML,针对其他人的SVG,HTML5文档类型)...
你有没有想过在doctype上使用条件语句? '<! - [if IE 8]><!doctype ...>'我知道这不是你的问题,但它可能是一个替代解决方案。 – Eruant