在以前老是浏览器IE<9在不支持SVG情况下,IE一般通过VML来绘制图形,图片,文字等

步骤:

  必须在头部添加

    <HTML xmlns:v="urn:schemas-microsoft-com:vml"> 手动添加 或者通过JS来添加

  添加样式

    v\:* {behavior:url(#default#VML);}

  注:对于IE8来说由于不支持 v:\* 所以必须根据具体的用到的元素来设置样式,还有必须手动来设置display属性来强制浏览器渲染 

  v\:rect,
  v\:Line,
  v\:oval,
  v\:PolyLine {
    behavior: url(#default#VML);
    display: inline-block
  }

  

  下面只是对IE8来看看具体的示例:

  

<!DOCTYPE html>
<HTML xmlns:v="urn:schemas-microsoft-com:vml"> <head>
<meta charset="utf-8">
<!--这部分怕冲突 只对IE8引入-->
<!--[if IE 8]>
<link rel="stylesheet" type="text/css" href="1.css">
<![endif]-->
</head> <body> <v:polyline
id=528
style="CURSOR: pointer;"
points="928,208.5 993,108.5"
fromTo="928,108.5,993,108.5"
strokecolor="#5068ae"
strokeweight="1.2pt">
<v:stroke></v:stroke>
<DIV style="LEFT: 36px; TOP: -6px">&nbsp;</DIV>
</v:polyline> <v:polyline id=5228
style="CURSOR: pointer"
points="928,108.5 993,108.5"
fromTo="928,108.5,993,108.5"
strokecolor = "#5068ae"
strokeweight = "1.2pt">
<v:stroke></v:stroke>
<DIV style="LEFT: 36px; TOP: -6px">&nbsp;</DIV>
</v:polyline>
</body>
</html>

结果如下:

IE8中动态添加VML标签时注意地方:

  通过字符串的方式,样式不能直接拼接在字符串中,否则没有效果;只能通过document.style方式添加

   line = document.createElement("<v:line id=\"cv\" from=\"0,0\" to=\"600,0\" fillcolor=\"red\" ></v:line>");

    stroke = document.createElement("<v:stroke EndArrow=\"Diamond\"/>");

   line.appendChild(stroke);

   document.body.appendChild(line );  // 只生成不带箭头的线

参考链接推荐
  
  推荐链接 (http://www.htmlgoodies.com/beyond/xml/article.php/3473491/VML-Vector-Markup-Language.htm)
  推荐博客 (http://www.codeweblog.com/javascript-%E5%8A%A8%E6%80%81%E5%88%9B%E5%BB%BAvml%E7%9A%84%E6%96%B9%E6%B3%95/)

  

VML :Vector Markup Language的更多相关文章

  1. XML EXtensible Markup Language

    1.基础:XML设计被用来传输和存储数据:全称是EXtensible Markup Language.它的设计宗旨是传输数据,而不是显示数据.xml的标签没有被预定义,需要由用户自行定义标签.xml被 ...

  2. HTML (Hyper Text Markup Language) 常用标签

    HTML是什么?  英文全称:Hyper Text Markup Language  中文全称:超文本标记语言  网页主要由 机构  表现 行为  组成 什么是标签?    < > 里的叫 ...

  3. HTML:Hyper Text Markup Language 超文本标记语言

    1.HTML是什么? *Hyper Text Markup Language 超文本标记语言 *Hyper Text:超链接.把不同空间的资源,整合在一起,形成逻辑上的网状结构. *Markup La ...

  4. 我眼中的SAML (Security Assertion Markup Language)

    提到SAML (Security Assertion Markup Language), 很多人都会联想到单点登录SSO.那么Saml到底是什么,它跟sso到底有什么联系?这里给大家分享一下我在读完了 ...

  5. html(HyperText Markup Language)--超文本标记语言

    1.html的简介? * 什么是html? ** HyperText Markup Language:超文本标记语言,网页语言 ** 超文本:超出文本的范畴,使用html可以轻松实现这样操作: ** ...

  6. XML简介——可扩展标记语言(Extensible Markup Language)

    (What) XML是什么? XML指可扩展标记语言(Extensible Markup Language) 1.  XML是一种标记语言,类似HTML. 2.  XML具有自我描述性 3.  XML ...

  7. 00HyperText Markup Language

    HyperText Markup Language HTML超文本标记语言是一种用于创建网页的标准标记语言用于显示网页内容,HTML运行在浏览器上,由浏览器来解析,您可以使用 HTML 来建立自己的 ...

  8. 00Extensible Markup Language

    Extensible Markup Language XML(Extensible Markup Language)可扩展标记语言是用来网络数据的组织结构,传输及存储.

  9. 超文本标记语言(Hyper Text Markup Language):构建网页的语言

    超文本标记语言(Hyper Text Markup Language):构建网页的语言

随机推荐

  1. iCIBA简单案例

    效果图: 代码: <!DOCTYPE html><html> <head> <meta charset="utf-8" /> < ...

  2. 未在本地计算机上注册"Microsoft.ACE.OLEDB.12.0"提供程序

    运行时出现了错误,提示未在本地计算机上注册"Microsoft.ACE.OLEDB.12.0"提供程序. 这个问题的原因是64位PC上安装了Office的32位版本,所以Micro ...

  3. SQL 经典练习

    SQL 基础练习 CREATE TABLE STUDENT(SNO VARCHAR(3) NOT NULL, SNAME VARCHAR(4) NOT NULL,SSEX VARCHAR(2) NOT ...

  4. Linux中的常见配置文件

    网络服务端口 /etc/services

  5. JMS-activeMQ

    参考资料: http://yuxisanren.iteye.com/blog/1912587 .JMS简介:JMS即Java Message Service,是Java 程序创建.发送.接收和读取企业 ...

  6. windows安装Apache HTTP服务器报错:无法启动,因为应用程序的并行配置不正确

    Apache HTTP服务器安装后报:无法启动,因为应用程序的并行配置不正确-(已解决)   0条评论 [摘要:本创做品,出自 “深蓝的blog” 专客,迎接转载,转载时请务必说明出处,不然有权穷究版 ...

  7. php的一些小笔记-文件函数(3)

    文件的写入和读取 1 . 文件的读取 1, file_get_contents 函数是用来将文件的内容读入到一个字符串中的首选方法    结果

  8. linux 文件查找和压缩工具

    文件查找 1,which命行查找可执行文件,which 只会搜索系统$PATH目录 2,whereis,查找可执行文件,并显示出此文件的man page文件,并且可以查找到系统的库目录 3,locat ...

  9. HTML5实战之桌面通知

    桌面通知功能能够让浏览器即使是最小化状态也能将消息通知给用户.这和WebIM是最为天然的结合.不过,目前支持Desktop Notification功能的浏览器只有Chrome5+. 关于通知的基础知 ...

  10. AT89C 系列单片机解密原理

    单片机解密简单就是擦除单片机片内的加密锁定位.由于AT89C系列单片机擦除操作时序设计上的不合理.使在擦除片内程序之前首先擦除加密锁定位成为可能.AT89C系列单片机擦除操作的时序为:擦除开始---- ...