不同的浏览器存在兼容性问题的核心原因是不同的浏览器可能使用的是不同的浏览器内核。
在现代化开发中,大多数的浏览器兼容性问题是可以通过工程化中的配置选项来解决的。
1.比如browserslist可以配置目标的浏览器或者Node环境,然后在不同的工具中起作用,比如autoprefixer/babel/postess preset env等,在进行了正确的配置后,开发的Vue或者React项目在进行打包时,会自动根据目标环境来添加CSS前缀、Babel代码转换等。
2.如果我们想要额外的适配,通常在项目中我们还会引入normal.css和polyfills来添加特定的CSS、JS的适配问题
3.还有一些事针对移动端的,比如移动端点击300ms的延迟、移动端1px边框的问题,都可以在特定的环境或者需求下来解决
4.当遇到问题时,很重要的事我们需要多查询caniuse的网站来确定某些特性的兼容性
5.另外如果针对特定的用户使用的是不同的浏览器和设备时,我们需要使用特定的工具,比如Browserstack这样的工具来进行测试,遇到特定问题时,及时的解决和处理。
总结
比之前我们在开发中借助于transform实现动画效果,使用的是复合属性,transform:translate(10px,20px) scale(1.5):。但是这种复合属性在E11上是有问题,因为它并不支持,所以我们就必须对它拆分属性,首先设置translate,在它的外层再包裹一个容器,用来设置scale属性。
感谢观看
评论(0)