项目当中遇到的浏览器兼容问题
1、
例用弹性盒子布局,给六个块的宽度都是flex:1;
,google、火狐等浏览器均正常,ie和edge这类浏览器是将父宽度均分,所以子元素超出就会折行,只需要将子元素设置强制不让折行后即可,white-space:nowrap;
改后的效果如下
2、利用多层穿透样式>>> /deep/时 edge、ie、火狐等穿透不了,google正常,可以将第二层的穿透样式改变修改的位置,例如放在第一层
3、width:min-content;
(外层宽度由内部元素宽度撑开)这个css3新的属性在edge、ie没有这个属性,可以替换一种方式实现同种效果,只需要display:inline-block;
即可
4、vue页面在ie浏览器下打开显示空白
Polyfill 用来为旧浏览器提供它没有原生支持的较新的功能。
ie9和一些低版本的高级浏览器对es6新语法并不支持 导致 页面在ie浏览器不能正常展示,显示空白
babel提供了polyfill依赖,用来解决这一问题,方法如下:
首先安装依赖:
npm install --save @babel/polyfill
在/src/mian.js中引入 polyfill 依赖
import 'babel-polyfill'
修改/build/webpack.base.config.js文件的配置:
entry: {
// app: './src/main.js' // 旧配置
app: ["babel-polyfill",'./src/main.js'] // 新配置
},
5、
IE兼容问题new Date()的值为Invalid Date、NaN,导致element时间选择器时间不能选择
ew Date('2018-11-14') //返回Wed Nov 14 2018 08:00:00 GMT+0800 (中国标准时间),转换成功
new Date('2018-11-14 00:00:00') //返回Invalid Date,转换失败(IE不支持这种写法)
new Date('2018/11/14 00:00:00') //返回Wed Nov 14 2018 08:00:00 GMT+0800 (中国标准时间),转换成功
6、
Google的开始时间和结束时间都能正常显示,火狐等浏览器开始时间正常结束时间不能显示也不能选择
排查代码是因为结束时间多了个空格导致火狐ie等浏览器出不来