webForumDet fria alternativet

!important

3 svar · 509 visningar · startad av Web-Tor

Web-TorMedlem sedan nov. 200013 890 inlägg
#1

Går det att få in !important via JavaScript?

function listOver(obj){
 obj.style.backgroundColor="#eee"; //Här vill jag ha in "!important"
}
Peter SMedlem sedan dec. 20025 483 inlägg
#2

Det verkar som att IE7 (troligtvis lägre versioner också) inte vill vara med på "#eee !important". FF2 och Opera9 har däremot inga problem med detta.

Såvida du inte finner någon annan lösning antar jag att

.foo { background-color:#eee !important; }
function listOver(obj){
  obj.className = "foo";
}

fungerar.

Web-TorMedlem sedan nov. 200013 890 inlägg
#3

Tyvärr kan jag inte byta klassnamn i just det här fallet. Jag använder en tabell på sidan som har runt 10000 celler och byter jag klassnamn vid onmouseover går det så j*vla segt! :x

Det räcker med en IE-lösning.

Peter SMedlem sedan dec. 20025 483 inlägg
#4

En sökning verkar ge att detta blir svårt att åstadkomma. Logiken är faktiskt rimlig: eftersom user stylesheets har högre prioritet än author stylesheets, tillsammans med det faktum att en användare har möjlighet att specificera !important för något element, bryts prioritetsordningen skulle tilldelningen av !important till style-attributet (via ex. JS) få önskad effekt.

133 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)