IE8标准模式下VML不能显示问题

本文探讨了在IE8标准模式下,使用HTML文档类型声明与VML结合时出现的渲染问题,并提供了通过设置IE7模式、引入命名空间等方法来解决此问题的详细步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当页面使用<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
下,在IE7或者IE兼容模式下,使用VML可以正常显示,但是IE8标准模式下,不能正常渲染VML,导致显示不成功

可以使用如下方法:

1、设置为IE7模式    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
2、引人相应的namespace

<?import namespace="v" implementation="#default#VML" ?>
或者

document.namespaces.add("v","urn:schemas-microsoft-
com:vml","#default#VML");
或者

if(!document.documentMode || document.documentMode<8) {
  document.createStyleSheet().addRule('v\\:*', "behavior: url
(#default#VML);");

}

if(document.documentMode && document.documentMode>=8) {
  document.writeln('<?import namespace="v"
implementation="#default#VML" ?>');

参考:

http://groups.google.com/group/google-excanvas/browse_thread/thread/8762ed1ede73509?pli=1

http://social.msdn.microsoft.com/Forums/pl-PL/iewebdevelopment/thread/cc144391-95ce-425c-b1bb-4db24082d823

https://connect.microsoft.com/IE/feedback/details/333905/ie-v8-0-vml-is-no-longer-supported

http://blog.youkuaiyun.com/cuixiping/article/details/4227283

http://blog.sachinkraj.com/how-to-make-rounded-corners-in-internet-explorer-without-images/

 

转载于:https://www.cnblogs.com/wasp520/archive/2012/04/22/2465427.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值