comment supprimer une seule propriété de style avec jquery

125

J'ai un div avec cette propriété style="-moz-user-select:none; position:static !important;". J'ai besoin de supprimer -moz-user-select Tried with $ (selector) .css () mais je ne sais pas quelle valeur définir car c'est "none".

Kreker
la source
Si c'est le cas, nonepourquoi devez-vous le supprimer? Si vous avez besoin de le changer pour une autre valeur, voici une liste de valeurs valides
Tchad

Réponses:

243

La documentation de css () indique que définir la propriété de style sur la chaîne vide supprimera cette propriété si elle ne réside pas dans une feuille de style:

Définir la valeur d'une propriété de style sur une chaîne vide - par exemple $('#mydiv').css('color', '')- supprime cette propriété d'un élément si elle a déjà été appliquée directement, que ce soit dans l'attribut de style HTML, via la .css()méthode de jQuery ou via une manipulation DOM directe de la propriété de style. Cependant, il ne supprime pas un style qui a été appliqué avec une règle CSS dans une feuille de style ou un <style>élément.

Puisque vos styles sont en ligne, vous pouvez écrire:

$(selector).css("-moz-user-select", "");
Frédéric Hamidi
la source
21
@KevinFegandocument.getElementById('mydiv').style.removeProperty('-moz-user-select')
xehpuk
-1

Vous pouvez également remplacer "-moz-user-select: none" par "-moz-user-select: inherit". Cela héritera de la valeur de style de n'importe quel style parent ou du style par défaut si aucun style parent n'a été défini.

dmorlock
la source
3
hériter n'est pas supprimer
Eugen Konkov