come rimuovere solo una proprietà di stile con jquery


124

Ho un div con questa proprietà style="-moz-user-select:none; position:static !important;". Devo rimuovere -moz-user-select Tried with $ (selector) .css () ma non so quale valore impostare perché è "nessuno".


Se è noneper questo motivo è necessario rimuoverlo? Se è necessario modificarlo in un altro valore, ecco un elenco di valori validi
Ciad

Risposte:


242

La documentazione per css () dice che l'impostazione della proprietà di stile sulla stringa vuota rimuoverà quella proprietà se non risiede in un foglio di stile:

L'impostazione del valore di una proprietà di stile su una stringa vuota, ad esempio $('#mydiv').css('color', ''), rimuove quella proprietà da un elemento se è già stata applicata direttamente, sia nell'attributo di stile HTML, tramite il .css()metodo di jQuery o tramite la manipolazione diretta DOM della proprietà di stile. Tuttavia, non rimuove uno stile che è stato applicato con una regola CSS in un foglio di stile o <style>elemento.

Poiché i tuoi stili sono in linea, puoi scrivere:

$(selector).css("-moz-user-select", "");

21
@KevinFegandocument.getElementById('mydiv').style.removeProperty('-moz-user-select')
xehpuk

-1

Puoi anche sostituire "-moz-user-select: none" con "-moz-user-select: inherit". Questo erediterà il valore dello stile da qualsiasi stile genitore o dallo stile predefinito se non è stato definito alcuno stile genitore.


3
ereditare non è rimuovere
Eugen Konkov
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.