關於微信手機端IOS系統中input輸入框無法輸入的問題


具體的可以去博客看一下www.nut666.com?from=bky

 

最近兩天做移動端游戲舉報頁面。遇到一個問題,移動端的input都不能輸入了,后來發現可能是

-webkit-user-select :none ;

在移動端開發中,我們有時有針對性的寫一些特殊的重置,比如:

* {
-webkit - touch - callout: none;
//-webkit-touch-callout:none; 阻止長按圖片之后呼出菜單提示復制的行為

//禁用Webkit內核瀏覽器的文字大小調整功能。
-webkit-text-size-adjust: none;

//避免點擊a標簽或者注冊了click事件的元素時產生高亮
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
//
//禁止用戶進行復制.選擇.
-webkit-user-select: none;
}

其中,-webkit-user-select :none ;會產生一些問題。
這是webkit內核瀏覽器下的一個bug,具體可以參考這篇文章:https://bugs.webkit.org/show_bug.cgi?id=82692


 

阻止了用戶的選擇內容行為,會導致一些“內容可編輯”標簽無法正常使用,比如input、testarea。

如果網站不需要阻止用戶的選擇內容的行為就可以使用如下樣式:

  * {
-webkit-user-select: text;
-user-select: text;
}

另一種方式:

*: not(input, textarea) {
-webkit - touch - callout: none;
-webkit - user - select: none;
}

user-select , can cause issues in elements with contenteditable="true" ,so better to add that too .

所以,最好把它也加上。

最終的代碼:

[contenteditable = "true"], input, textarea {
-webkit-user- select: auto!important;
-khtml-user-select: auto!important;
-moz-user-select: auto!important;
-ms-user-select: auto!important;
-o-user-select: auto!important;
user-select: auto!important;
}

 

上面內容大概就是 這么多。但是我一一試了,在我的代碼中並沒有 卵用。

后來開始用排除法去清查css樣式表,發現在ios系統下面,布局方式使用的事 rem方式去布局的話,正巧,在input上面書寫了rem的寬或者高。

那么恭喜你,在真機上測試是 拿不到焦點的,必須用px或者百分比去代替。

不知道有沒有 其他人像我一樣遇到。

 

 

 


-----------------------------------------------------------------------------------------------------------------------------------------------------


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM