IOS 坑

如何禁用手势导航?
opacity 小于 0.2 时 input 不会自动避开小键盘
overflow: hidden 中的 fixed 元素也同样被剪切
iframe 不能滚动,而是全部显示
不支持 calc 计算字体像素值,需要使用百分比:html { font-size: calc(112.5% + 4 * (100vw - 600px) / 400); }
3D变换会忽略z-index的层级。需在父级元素设置 overflow:hidden 或者 3d变化z轴
filter (css属性名)导致 其它元素渐变的动画 好卡。
不支持 execCommand('cope')。
copy 事件发生时不能setData(ios下bug)
有时复制不上文字???
橡皮条效果导致 transform 动画闪动,如何禁止橡皮条(fixed不好用)。 // 禁用 document touchmove event
如何不指定 flex-shrink: 0; p标签会被压缩到文本高度
在 p 的文本中添加inline元素造成间距不一,整个放在中文引号中解决。。。
localStorage 在浏览器开启无痕模式下 ios 会抛异常。
css 的 not-allowed 会影响 click 效果,但是element.click有效。
链接点击可以 cursor: pointer
css 的 display: contents 会导致内容有时候点击不到
有些 click 监听无效,可以使用 onclick 属性(不作用于css not-allowed)。
iOS 弹出键盘时,视口高度并不会变,fixed 元素到页面底部去了!!fixed 元素的 fixed 属性将失效,如果其父元素能滚动则会出现问题 // ios 12 小键盘收起后,fixed 元素的 UI 恢复,但实际热点没有回复,需要触发滚动才会恢复
IOS 12 弹出键盘时,内容可以滚动,上面的滚动部分不会算进 innerHeight,但是 document.body.scrollTop 还是算
Audio 不能自动播放。
IOS 中 input 不显示时小键盘出现不会改变页面位置
在ios9.0和9.1 的 webview 里,修改location.hash不会直接修改这个值,其中会有30ms左右的延迟。这个问题直接影响到了angular和backbone的navigation的实现。(angular已经发补丁了。)
设置了font-face,字体没有下载好,字不显示。(字体下载也算在onload里面)