浏览器兼容性问题小结

6
浏浏浏浏浏浏浏浏浏浏 HTTP://ADAMLU.COM/ 浏浏 |ADAM

Transcript of 浏览器兼容性问题小结

Page 1: 浏览器兼容性问题小结

浏览器兼容性问题小结HTTP://ADAMLU.COM/

空雁 |ADAM

Page 2: 浏览器兼容性问题小结

浏览器兼容性从何而来?设计师:为什么在不同的浏览器显示效果不一样?前端:因为不同浏览器对于 css样式表的解析不一样,所以导致样式乃至层布局发生变化,同时对于 DOM的实现也不一致导致前端开发工作量的增加。

——> Web标准化WEB标准不是某一个标准,而是一系列标准的集合。网页主要由三部分组成:结构( Structure)、表现( Presentation)和行为( Behavior)。对应的标准也分三方面:结构化标准语言主要包括 XHTML和 XML,表现标准语言主要包括 CSS,行为标准主要包括对象模型(如W3C DOM)、 ECMAScript等。这些标准大部分由W3C起草和发布,也有一些是其他标准组织制订的标准,比如ECMA( European Computer Manufacturers Association)的ECMAScript标准。

Page 3: 浏览器兼容性问题小结

CSS兼容性A标签常见兼容性问题 L V H AIE对 CSS标准的支持缺陷

• important• inherit• 子选择器• 非锚点 :hover• 非锚点 :active• :focus• position:fixed• display:inline-block

IE的两种模式 (Quirks/Standard)

CSS HACK

问题:你如何区分 ie6/7/8 /ff/webkit/…

Page 4: 浏览器兼容性问题小结

JAVASCRIPT兼容性innerText/textContent

childNodes获取的节点样式的 float(styleFloat-ie,cssFloat-ff)/for(htmlFor-ie, for)/class(使用 className)

表单的 Input.type input.name

表单的 disabled 属性事件处理 (keyCode, x, pageX)

getComputedStyle(el, null)/el.currentStyle

问题:判断 ie浏览器的方法?

Page 5: 浏览器兼容性问题小结

总结使用标准的 HTML标签遵循W3C CSS规范,如书写顺序 (font, border),命名规范,单位尽量使用标准的属性可以用 JS模仿一些低版本 IE不支持的 CSS标准尽量减少 HACK的使用 !!!

Page 6: 浏览器兼容性问题小结

谢谢!