Position: fixed 在IOS上的顯示效果
會出現兩種情況:
-
點擊fixed定位的元素會出現fixed定位失效導致的元素貼向底部,即position: absolute,bottom: 0px;的情況
-
點擊fixed定位的元素,元素向上移,定位生效,位置偏移大
解決方案 - 僅針對Safari
給fixed定位元素設置一個點擊事件,在點擊事件會調函數中加入 window.scrollTo(0, document.body.scrollHeight); (將頁面視口定位至頁面底部),然后改變改定位元素的css class,把 position: fixed ==> position: absolute,這樣,我們就可以很快的解決fixed定位導致的前兩類Bug,當然,如果定位元素是Input標簽,別忘了增加 blur 事件在失去聚焦后把css class改回。