css盒模型差异
盒模型分为标准模型和怪异模型。chrome,火狐浏览器使用标准模型,IE使用怪异模型。
在标准盒模型下,width和height是内容区域即content的width和height。而盒子总宽度为
在标准模式下,一个块的总宽度= width + margin(左右) + padding(左右) + border(左右)
IE盒模型或怪异盒模型显而易见的区别就是,width和height除了content区域外,还包含padding和border。盒子的总宽度为一个块的总宽度= width + margin(左右)(即width已经包含了padding和border值)
扩展知识:目前多数UI框架,如bootstrap等在布局上都趋向于使用怪异模型,因为怪异模型包含了padding和border,当我们写布局时,假设上下两个元素均设置了宽度100px,这时想给上面元素添加上padding和border,使用标准模型的话,就好发生上下两个元素不对齐的情况,而使用怪异模型,上下两个元素的对齐不会受影响,因为宽度已经包含了padding和border.
js兼容性
总体来说,IE对ES6语法支持不如chrome,火狐浏览器。
IE和chrome,火狐的不同。
首先,IE不支持默认值参数,例如function(type=0){},这种写法IE不支持,此种写法在IE上会报缺少括号错误。SCRITP1006:缺少‘)’
第二,部分ES6方法,IE不支持,如数组的includes方法等。
第三,事件兼容性,chrome,火狐可以直接在函数中获取event,而IE需要用window.event
第四,部分框架在IE上使用容易引发很多错误问题,并且需要polify包。如qiankun。
第五,IE不支持 new File对象,window10初带的Edg也不支持(升级后的Edg支持)
火狐与chrome,IE的不同:鼠标滚动事件,火狐使用DOMMouseScroll事件,其他使用onmousewheel 事件
苹果safari浏览器不支持中文cookie
chrome,edg支持pwa,其他不支持
网友评论