最近用vue寫表單時,彈出的軟鍵盤將固定在頁面底部的按鈕頂上來了,導致布局有一定的混亂。
原因:某些手機下鍵盤彈起會引起窗口高度(html標簽的高度)變小,而fixed定位是相對於html根元素的,所以會被頂上來。如下圖:
(網絡配圖)
解決方式:
export default { data() { return { clientHeight:document.documentElement.clientHeight, showBtn: true, // 控制按鈕盒子顯示隱藏 } }, mounted() { window.onresize= ()=>{ if(this.clientHeight>document.documentElement.clientHeight) { this.showBtn =false }else{ this.showBtn = true } } } }
// 完美解決