优化 兼容

177 阅读1分钟

css兼容

    1. 不同浏览器的标签默认的margin和padding不同
    • CSS里 *{margin:0;padding:0;} 但是性能不好
    • 一般我们会引入reset.css样式重置;
    1. css3新属性,加浏览器前缀兼容早期浏览器
    • 哪些css3属性需要加:
      • /
    • /
    1. 超链接访问过后hover样式就不出现的问题
    • CSS属性的排列顺序: L-V-H-A
    1. 图片默认有间距
    • 使用float属性为img布局(所有图片左浮)
    1. css hack解决浏览器兼容性

js兼容

    1. 事件绑定
    • IE: dom.attachEvent();
    • 标准浏览器: dom.addEventListener(‘click',function(event){},false);
    • 如果浏览器不支持 addEventListener()方法, 你可以使用 attachEvent()方法替代
    1. event事件对象问题
    1. event.srcElement(事件源对象)问题
    • IE: event对象有srcElement属性,但是没有target属性;
    • Firefox: event对象有target属性,但是没有srcElement属性。
    • srcObj = event.srcElement?event.srcElement:event.target;
    1. 获取元素的非行间样式值:
    • IE: dom.currentStyle[‘width’] 获取元素高度
    • 标准浏览器: window.getComputedStyle(obj, null)['width'];
    1. 阻止事件冒泡传播:
    1. 阻止事件默认行为:
    1. ajax兼容问题
    • IE: ActiveXObject
    • 其他: xmlHttpReuest
    • /