J'ai expérimenté l'utilisation de javascript pour écrire dynamiquement des feuilles de style. Dans Firefox, on peut utiliser la méthode setProperty
sur le style pour le cssRules
du styleSheets
, comme ...Ajout de! Important dans une feuille de style écrite dynamiquement pour Internet Explorer
document.styleSheets[0].cssRules[0].style
.setProperty(propertyName, propertyValue, 'important');
... pour définir le drapeau !important
sur le style. Je n'ai pas trouvé un équivalent pour cela dans Internet Explorer (la méthode setAttribute
n'a pas une telle option pour définir le drapeau !important
sur un style). Certaines expérimentations ont trouvé que pour les styles exacts, tels que border-top-width,
je peux réécrire la chaîne cssText
pour ajouter le !important
, mais ensuite j'ai découvert que si vous définissez individuellement toutes les bordures, IE réécrit la règle actuelle pour qu'elle soit une forme courte, donc elle réécrit à border-top
, border-right
, etc., et chacun est défini, mais sans le drapeau !important
. En outre, si je l'ai explicitement défini via le formulaire court, il ne pas accepter une réécriture du cssText
pour prendre le drapeau !important
. Donc, la question est, est-ce que quelqu'un sait d'une manière, lors de l'écriture dynamique des styles à une règle styleSheets
, pour qu'IE puisse définir de façon cohérente l'indicateur !important
pour cette règle?
Merci pour votre aide,
Scott
Je suppose que personne n'a rien à offrir sur une solution pour cela (si, en effet, il existe une solution)? – ScottS