2

したがって、以下は Chrome では機能しますが、FireFox では機能しません。

* {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

input {
    -webkit-touch-callout: auto;
    -webkit-user-select: auto;
    -khtml-user-select: auto;
    -moz-user-select: auto;
    -ms-user-select: auto;
    user-select: auto;
}

コンテナ要素の選択を無効にする方法はありますが、フォーム入力などを選択可能にする方法はありますか?

4

1 に答える 1

1

いくつかの提案 (創造的になろうとしている)

1.簡単に書いてみてください:

:not(input) {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

このルールは 以外のすべてに適用するinput必要があるため、入力の動作を元に戻す別のルールは必要ありません (FF バージョンで失敗する可能性がありますか?)。


2.これで解決しない場合は-moz-selection/selection、ユーザー選択時に背景が透明な疑似クラスを使用して不正行為を試みます

::-moz-selection { background: transparent; color: #000; }
::selection      { background: transparent; color: #000; } 

input::-moz-selection { background: blue; color: #fff; }
input::selection      { background: blue; color: #fff; } 

ユーザビリティのための補足として、この種の制限は避けてください: それらは一般的に苛立たしいものであり、誰かがあなたのページのテキストを本当に選択してコピーしたい場合、ソースコードビューから簡単にそれを行うことができます.

于 2012-04-23T13:31:45.380 に答える