2013-03-01 150 views
3

我在<pre><code>中有一些源代碼,行號分別爲<div>。當選擇文本時,行號會隨之一起顯示,並隨後被複制。是否有任何方法可以防止行號成爲選擇的一部分,即使我選擇了源代碼塊之上和之下的元素?防止元素參與文本選擇

我想避免使用JavaScript來瀏覽JavaScript。 (使用JavaScript,我會添加一個按鈕來隱藏行號)。

unselectable="on"和各種供應商特定的user-select CSS屬性不起作用;數字仍然被選中並複製。

回答

4

給你要防止選擇一個id的元素。

那麼把它放進你的CSS:

#id-name { 
    -webkit-touch-callout: none; 
    -webkit-user-select: none; 
    -khtml-user-select: none; 
    -moz-user-select: none; 
    -ms-user-select: none; 
    user-select: none; 
} 
::-moz-selection { 
    background: transparent; 
} 
::selection { 
    background: transparent; 
} 
+1

AAAAH。我現在知道了。該元素仍然顯示爲被選中(我正在使用Firefox),但文本實際上並未被選中,也沒有任何內容被複制。要禁用選擇外觀,我添加了':: - moz-selection {background:transparent; }'和':: selection {background:transparent;在元素上。 – nneonneo 2013-03-01 07:31:55

+0

很高興我能幫上忙。 – 2013-03-01 07:33:46

+0

您可以將':: selection'位添加到您的答案嗎? (如果你不介意) – nneonneo 2013-03-01 07:34:20