В настоящее время я поместил это в тег тела, чтобы отключить выделение текста:
body {
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
Тем не менее, мои input
и textarea
коробки теперь неактивны. Как я могу сделать только эти элементы ввода доступными для выбора, а остальные - недоступными для выбора?
input
иtextarea
элементы: jsfiddle.net/Smy26Ответы:
Не применяйте эти свойства ко всему телу. Переместите их в класс и примените этот класс к элементам, которые вы хотите отключить, выберите:
.disable-select { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
источник
element
не поддерживается в Chrome / Safari.Вы также можете отключить выбор пользователя для всех элементов:
* { -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; }
Теперь каждый элемент внутри div с идентификатором не
div
будет иметь выбора.Демо
источник
вместо того, чтобы
body
ввести список нужных элементов.источник
Я согласен с Someth Victory, вам нужно добавить определенный класс к некоторым элементам, которые вы не хотите выбирать.
Кроме того, вы можете добавить этот класс в определенных случаях с помощью javascript. Пример здесь Делаем контент недоступным для выбора с помощью CSS .
источник
Отключить выбор везде
input, textarea ,*[contenteditable=true] { -webkit-touch-callout:default; -webkit-user-select:text; -moz-user-select:text; -ms-user-select:text; user-select:text; }
IE7
<BODY oncontextmenu="return false" onselectstart="return false" ondragstart="return false">
источник