移動端常見問題

2022-05-18 15:54:59 字數 938 閱讀 1049

一.點選穿透:

原因:1. touch事件300ms後,觸發click事件;

2. 混用touch和click會導致點透問題。

解決思路:

1.不要混用touch和click;

2.阻止掉 touch之後的click。

解決方案:

1.tap後延遲350ms再隱藏mask

2.pointer-events:mask隱藏後,給按鈕下面元素添上pointer-events: none;樣式,讓click穿過去,350ms後去掉這個樣式,恢復響應;

3.fastclick

4.只用click

5.只用touch

解決方案:

1.先顯示假的輸入框,點選後出現真的;

2.用css布局;

三.retina屏1px問題

原因:裝置畫素比(device pixel ratio,簡稱dpr) =物理畫素 / 裝置獨立畫素

css中的1px,也就是裝置獨立畫素,並不等於移動裝置的1px(物理畫素),這些由於不同的手機有不同的裝置畫素比。

解決方案:

1.通過viewport + rem的方式來相容。

目前這種相容方案相對比較完美,適合新專案(老專案改用rem單位成本會比較高)。**m首頁就是這種方案。

在devicepixelratio = 2 時,輸出viewport 

在devicepixelratio = 3 時,輸出viewport

同時設定對應viewport的rem基準值,這種方式就可以像以前一樣輕鬆愉快的寫1px了。

移動端常見問題

1 ios下input為type button屬性disabled設定true,會出現樣式文字和背景異常問題 解決方案 使用opacity 1來解決 2 對非可點選元素如 label,span 監聽click事件,部分ios版本下不會觸發 解決方案 css增加cursor pointer就搞定了 3...

移動端常見問題

1 上下拉動滾動條時卡頓 慢 body 2 禁止複製 選中文字 element 解決移動裝置可選中頁面文字 視產品需要而定 3 長時間按住頁面出現閃退 element 4 iphone及ipad下輸入框缺省內陰影 5 ios和android下觸控元素時出現半透明灰色遮罩 6 active相容處理 7...

移動端常見問題

移動端的頁面多數情況下用百分比或者 查詢來設定頁面的寬高度 這樣會達到響應的效果 這裡解釋幾點 1.webkit tap highlight color rgba 0,0,0,0 也可以寫成 webkit tap highlight color transparent 去掉點選時高光顯示 你也可以更...