VML :Vector Markup Language
在以前老是浏览器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"> </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"> </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的更多相关文章
- XML EXtensible Markup Language
1.基础:XML设计被用来传输和存储数据:全称是EXtensible Markup Language.它的设计宗旨是传输数据,而不是显示数据.xml的标签没有被预定义,需要由用户自行定义标签.xml被 ...
- HTML (Hyper Text Markup Language) 常用标签
HTML是什么? 英文全称:Hyper Text Markup Language 中文全称:超文本标记语言 网页主要由 机构 表现 行为 组成 什么是标签? < > 里的叫 ...
- HTML:Hyper Text Markup Language 超文本标记语言
1.HTML是什么? *Hyper Text Markup Language 超文本标记语言 *Hyper Text:超链接.把不同空间的资源,整合在一起,形成逻辑上的网状结构. *Markup La ...
- 我眼中的SAML (Security Assertion Markup Language)
提到SAML (Security Assertion Markup Language), 很多人都会联想到单点登录SSO.那么Saml到底是什么,它跟sso到底有什么联系?这里给大家分享一下我在读完了 ...
- html(HyperText Markup Language)--超文本标记语言
1.html的简介? * 什么是html? ** HyperText Markup Language:超文本标记语言,网页语言 ** 超文本:超出文本的范畴,使用html可以轻松实现这样操作: ** ...
- XML简介——可扩展标记语言(Extensible Markup Language)
(What) XML是什么? XML指可扩展标记语言(Extensible Markup Language) 1. XML是一种标记语言,类似HTML. 2. XML具有自我描述性 3. XML ...
- 00HyperText Markup Language
HyperText Markup Language HTML超文本标记语言是一种用于创建网页的标准标记语言用于显示网页内容,HTML运行在浏览器上,由浏览器来解析,您可以使用 HTML 来建立自己的 ...
- 00Extensible Markup Language
Extensible Markup Language XML(Extensible Markup Language)可扩展标记语言是用来网络数据的组织结构,传输及存储.
- 超文本标记语言(Hyper Text Markup Language):构建网页的语言
超文本标记语言(Hyper Text Markup Language):构建网页的语言
随机推荐
- 调试EF源码
在解决方案中添加下载好的EF的源码的引用 在新建项目中添加程序集的引用 添加配置文件中的节点 测试 获取程序集的公钥标记: 使用sn.exe命令 使用reflector
- sql 根据时间获取数据
获取当月数据 MONTH(时间字段)=MONTH(GETDATE()) and year(时间字段)=year(GETDATE()) 计算两个时间差了多少分钟 DATEDIFF(mi,'7:00',c ...
- (转) 值不能为空。参数名viewinfo(microsoft.sqlserver.management.sqlstudio.explorer)
打开MSSQL 2008 R2的时候,展开数据库都显示以下的错误提示: 值不能为空.参数名viewinfo(microsoft.sqlserver.management.sqlstudio.explo ...
- linq读书笔记1-linq 初步
至于linq是什么之类的已经有过太多的文章介绍,亦不清楚的胡朋友可以自己搜索一下便可以得到大量的答案 为了体验linq究竟能带给我们什么体验,我们直接从代码入手: string[] words = n ...
- Linux_X64安装Jboss
一.系统环境 系统平台:RedHat 6.4 Java version:jdk-6u45-linux-x64 Jboss version:jboss-5.1.0.GA-jdk6 二.下载jdk1. ...
- poj1159 dp(滚动数组优化)
H - 简单dp 例题扩展 Crawling in process... Crawling failed Time Limit:3000MS Memory Limit:65536KB ...
- C#设置按钮三态背景图片
1.闪电事件,注意添加手动或者点击按钮->属性中的闪电->下面对应各种事件 在上面: private void button1_MouseHover(object sender, Even ...
- c++模板编程-typename与class关键字的区别
最近一直在研究c++模板编程,虽然有些困难,但希望能够坚持下去.今天,在书上看见一个讨论模板编程typename与class两个关键字的区别,觉得挺有意义的,就把它们给总结一下. 先看一个例子: te ...
- DOM 节点实例操作
涉及知识点包括节点的所有知识 目的: 自动为文档创建一个目录表 自动创建目录
- angularjs:[1] ui-router 权限控制
1:简单的登录检查 $stateProvider .state('index', { url: "/", templateUrl: 'views/forwards/intro.ht ...