현재 텍스트 선택을 비활성화하기 위해 본문 태그에 넣었습니다.
body {
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
그러나 이제 내 input
및 textarea
상자를 선택할 수 없습니다. 이러한 입력 요소 만 선택 가능하고 나머지는 선택 불가능하게 만들 수있는 방법은 무엇입니까?
답변
이러한 속성을 전신에 적용하지 마십시오. 클래스로 이동하고 해당 클래스를 비활성화하려는 요소에 적용하십시오.
.disable-select {
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
답변
모든 요소에서 사용자 선택을 비활성화 할 수도 있습니다.
* {
-webkit-touch-callout:none;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none;
}
그리고 사용자가 선택할 수 있도록하려는 요소에서 활성화하는 것보다 :
input, textarea /*.contenteditable?*/ {
-webkit-touch-callout:default;
-webkit-user-select:text;
-moz-user-select:text;
-ms-user-select:text;
user-select:text;
}
답변
모든 것을 요약하고 싶었습니다.
.unselectable {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
<div class="unselectable" unselectable="yes" onselectstart="return false;"/>
답변
::selection,::moz-selection {color:currentColor;background:transparent}
답변
모든 선택을 비활성화 할 수 있습니다.
.disable-all{-webkit-touch-callout: none; -webkit-user-select: none;-khtml-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;}
이제 입력 및 텍스트 영역 활성화를 활성화 할 수 있습니다.
input, textarea{
-webkit-touch-callout:default;
-webkit-user-select:text;
-khtml-user-select: text;
-moz-user-select:text;
-ms-user-select:text;
user-select:text;}
답변
*
이를 위해 와일드 카드 선택기 를 사용하십시오 .
#div * { /* Narrowing, to specific elements, like input, textarea is PREFFERED */
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
이제 id div
가 있는 div 내의 모든 요소 에는 선택 항목이 없습니다.
데모
답변
body
원하는 요소 목록 을 입력하는 대신 .