遇到的前端的坑

445 阅读1分钟

(ios的坑)

  • 1、ios12版本下,弹出键盘输入框,会将页面整体向上移动,导致页面底部出现空白,页面上元素的实际位置和显示位置不匹配。

  • 2、ios基于安全的考虑,input,textarea的focus()方法必须由用户主动触发,即在时间绑定函数中直接执行,不能使用回调,否则会失效。例如,setTimeout(()=>{inputdom.focus()},1000),或者vue中的dom更新回调函数this.$nextTick(()=>{inputdom.focus()})以上都是无效的。(如果是对添加的input focus化,需要避免,通过一些透明或定位在屏幕外等方式优化)

  • 3、new Date('yyyy-MM-dd')会报错Invalid Date,可以使用new Date('yyyy/MM/dd')

  • 4、 iphone 下页面底部margin-bottom 无效,改为paddign-bottom

(android的坑)

  • 1、在使用rem单位时,会导致很多字号,div宽高是小数情况,line-height == height 并不能达到垂直居中的效果,表现偏上。 因为android在解析小数字号时不准确导致。可以使用table , flex font-size:initial等方式优化.