當我們不希望用戶在網頁上通過鼠標選擇文本并復制時,通常大家可以通過加JS代碼來實現,其實有另一個方法就是,將-webkit-user-select 和-moz-user-select 的值設為none。
其實這個方法針對普通用戶是有效的,但無法防止對網頁技術比較了解的用戶,所以真正要復制走你的文字辦法還是很多。比如通過搜索引擎保留的快照、網頁開發者工具、網頁另存到本地去除禁止代碼等。
以下是CSS控制頁面的文字無法被鼠標選中的代碼,不同的瀏覽器設置的內容不一樣,user-select不是一個W3C的標準,瀏覽器的支持不完成,需要對不同的瀏覽器進行調整。
/*設置IOS頁面長按不可復制粘貼,但是IOS上出現input、textarea不能輸入,因此將使用-webkit-user-select:auto;*/
四個屬性值的說明:
1、none:用none,子元素所有的文字都不能選擇,包括input輸入框中的文字也不能選擇。
2、-moz-all:子元素所有的文字都可以被選擇,但是input輸入框中的文字不可以被選擇。
3、-moz-none:子元素所有的文字都不能選擇,但是input輸入框中的文字除外。
4、user-select:有2個值(none表示不能選中文本,text表示可以選擇文本)。
如果要屏蔽右鍵可以用JS編寫的腳本,可以在body中加入:oncontextmenu=self.event.returnValue=false。
再分享兩個body禁止左鍵與右鍵的腳本寫法:
1、
2、
三個屬性值的說明:
1、oncontextmenu:右鍵菜單事件。
2、onselectstart:選中網頁內容事件。
3、oncopy:復制網頁內容事件。
通過腳本屏蔽是很容易被解除的,之前一篇文章中已有分享,有興趣請點擊閱讀:網頁內容不能左鍵選擇文字與右鍵被禁止的破解方法。