什么是浏览器内核?
浏览器内核分为两部分:渲染引擎和JS引擎。
渲染引擎负责——
- 取得网页的内容(HTML,XML,图像等)
- 整理信息(加入CSS等)
- 计算网页的显示方式
- 输出至显示器或打印机
JS引擎负责——
- 解析Javascript语言
- 执行Javascript语言来实现网页的动态效果
五大浏览器内核
- IE——Trident内核
- Firefox——Gecko内核
- Safari——Webkit内核
- Opera——以前是Presto内核,现在改用Blink内核
- Chrome——Blink内核
兼容性问题
不同的浏览器内核对网页编写语法的解释有所不同,因此同一网页在不同的内核的浏览器里的渲染(显示)效果可能不同,开发者需要在不同内核的浏览器中测试网页显示效果。
常见的浏览器兼容问题
浏览器默认的margin和padding不同
解决方法——添加一个全局的{margin:0;padding:0}来统一IE下,可以使用获取常规属性的方法来获取自定义属性,也可以使用getAttribute()获取自定义属性;
Firefox下,只能使用getAttribute()获取自定义属性。
解决方法——统一通过getAttribute()获取自定义属性IE下,event对象有x,y属性,但是没有pageX,pageY属性;
Firefox下,event对象有pageX,pageY属性,但是没有x,y属性。Chrome中文界面下默认会将小于12px的文本强制按照12px显示
解决方法——加入CSS属性 -webkit-text-size-adjust:none;