Je dois empêcher les utilisateurs de sélectionner des éléments dans l'interface utilisateur de mon application Web, , sauf pour le texte dans les zones de saisie et les zones de texte. Pour Firefox, la technique semble être d'utiliser cette css:Champs de saisie et zones de texte sélectionnables, mais aucun autre contenu sélectionnable dans Firefox?
* { -moz-user-select: none; }
Et cela fonctionne assez bien (testé Firefox 3.5.2), sauf que vous ne pouvez pas sélectionner puis dans les champs d'entrée ou textareas.
J'ai essayé le divisant en
div,td,span,img { -moz-user-select: none; }
input,textarea { -moz-user-select: text; }
cependant, si le champ d'entrée est à l'intérieur d'un div, td, ou la durée, il ne peut être sélectionné. Il semble que la propriété -moz-user-select soit également appliquée à tous les enfants, peu importe si ces enfants remplacent le paramètre. Est-ce que quelqu'un sait un moyen de contourner cela en dehors de mettre cela à un niveau beaucoup plus granulaire (et ennuyeux) pour des éléments spécifiques?
NOTE Ce n'est pas à des fins de sécurité. Je vais bien avoir les utilisateurs voir la source ou les utilisateurs avancés éteindre cela. Mais pour les interfaces utilisateur Web avec fonction glisser-déposer, ou simplement celles qui sont censées se comporter comme une application en général plutôt que comme un document, il est vraiment étrange de pouvoir sélectionner accidentellement du texte. Et cela arrive souvent pour la plupart des utilisateurs.
merci, ça a marché !!!! – TheBrain
ne fonctionne pas pour moi ... – jlarson
ah merde, je viens de réaliser que j'avais "none" pas "-moz-none". Vous décerner la prime que je viens d'attribuer dès que je suis autorisé à !! – jlarson