4 回答

TA貢獻2065條經驗 獲得超14個贊
.disable-select {
? user-select: none; /* standard */
? -moz-user-select: none; /* firefox specific */
? -webkit-user-select: none; /* Chrome, Opera and Safari*/
? -ms-user-select: none; /* IE, ms-edge */
}
版本兼容性
desktop:
Chrome: 54+
Firefox: 69+
Opera: 41+ (15+ with vendor prefix)
Safari: 3+
MS Edge: 12+
IE: 10+
mobile
Chrome for Android: 54+
Android web-view: 54+
Firefox for Android: 4+
Opera for Android: 14+
Safari on IOS: 3+
請參閱來源以獲取更多信息和版本兼容性。

TA貢獻1805條經驗 獲得超10個贊
我已經user-select: none
為此修復了一段時間,發現它并不令人滿意,所以我開始搜索該功能的正確名稱,以便查看是否有更好的修復/編寫,我遇到了這個 Google Developers Paul Kinlan 的帖子(顯然該功能稱為“觸摸搜索”):
https://developers.google.com/web/updates/2015/10/tap-to-search
其中詳細描述了該行為以及禁用或啟用該行為的各種方法。
與您的問題相關的相關摘錄:
對于任何可選擇且非交互式或不可聚焦的純文本,都啟用點擊觸發。當頁面具有響應文本點擊的點擊處理程序時,觸摸搜索會自動檢測響應并忽略它,因為我們知道開發人員打算處理該事件。使用觸摸并按住手勢手動選擇文本也會觸發觸摸搜索欄。用戶可以使用 Chrome 隱私設置下的首選項來啟用或禁用該功能。
作為網站的作者,您經常不希望在某些元素上點擊手勢來觸發搜索。為了確保 Chrome 實現您的預期,請制作以下元素:
可聚焦:在元素上添加 tabindex=-1 屬性。
交互式:使用幾種標準方法中的任何一種來指示元素是交互式的:
使用輔助功能標記來指示元素具有小部件角色或小部件屬性。例如,任何具有 role=button 的元素都不會觸發。添加輔助功能標記還有一個額外的好處,即您的頁面對于視障用戶來說更容易閱讀。
任何調用 PreventDefault() 或操作 DOM 或 CSS 的 JavaScript 單擊處理程序都不會觸發 Touch-to-Search。
不可選擇:使用 -webkit-user-select: none; 即使使用觸摸并按住手勢,不可選擇的文本也不會觸發觸摸搜索。
- 4 回答
- 0 關注
- 232 瀏覽
添加回答
舉報