zoukankan      html  css  js  c++  java
  • [翻译]IE8下VML的变化

    新的excanvans继续得到IE8的支持。尽管自VML于1998年发布以来,从没有经历过任何变更和改进。微软
    开发团队倾向于对他们的标准做些变动。
    1、命名空间的声明函数增加了第三个参数。
    原来的方式:
    document.namespaces.add('v', 'urn:schemas-microsoft-com:vml', "#default#VML");
    取而代之的最新的方式:
    document.namespaces.add('v', 'urn:schemas-microsoft-com:vml');
    2、行为规则选择器做了细微的变动。
    3、出于朝标准靠拢,当设置元素的维度或位置的时候,应该明确的指定计量单位,默认的单位不在是px。
    4、在DOM元素外部创建VML元素将是无效的。
    var myFragment = document.createDocumentFragment();
    myFragment.insertAdjacentHTML('beforeEnd',
    '<v:rect id="myRect" fillcolor="blue" style="top:10px;left:15px;50px;height:30px;position:absolute;"></biv:rect>'
    );
    document.body.appendChild(myFragment);
    上面的代码我们发现rect元素没有显示。我们尝试着修改它的css属性,甚至会以为tab标签选项卡或整个浏览器出了问题。其实不然,我们
    有好的办法来修复这个bug:拷贝元素的outHTML给它本身。
    var myRect = document.getElementById('myRect');
    myRect.outerHTML = myRect.outerHTML;
    5、使用%单位无用了。向量图形的优点是按比例调整大小不会有质量丢失。当所有部件的维度和位置使用pixels来设置
    时,我们应该如何来测量图形呢?你不得不借助onpropertychange事件来重新计算一次你打算重新定制大小的图形的尺寸。
    很多实例中我们不能简单的修复这个bug。比如:在div中放置个正方形:这个div的内容没有维度和比例,你希望正方形的高度随div的显示比例
    变化而变化。你可以通过设置正方形的高度为100%即可(前提是div的位置是相对的)。

    原文地址:http://ajaxian.com/archives/the-vml-changes-in-ie-8

  • 相关阅读:
    数据库信息 (表名 行数 堆 集群 非聚集)的查询
    jquerygalleryview2.0 漂亮多样化的图片特效(多项自定义)
    枚举 EnumDescription 位运算 权限 sql c#
    vs2010缓存类
    透明遮罩层
    app_offline.htm的作用
    XmlToJSON(c#)
    jquery性能最佳实践
    .net面试问答(大汇总)
    apk反编译
  • 原文地址:https://www.cnblogs.com/mingle/p/1585651.html
Copyright © 2011-2022 走看看