johny why: > --why? unless the site css ALSO uses !important, how else could it > override the candy-css?
Depending on how the rest of the selectors are written, a Body ID will do overwrite it. Sean On Jan 18, 12:45 pm, johny why <johny...@gmail.com> wrote: > ricardo: > > "what does this have to do with jQuery?" > > --this topic is on the jquery forum, because problems with a > jQuery component, Superfish, caused me to devise this method. The > superfish support page directed me to this forum for support. the > author of the plugin has not spoken up yet. (I imagine this technique > might be useful for other jQuery candy.) > "Support for the Superfish plugin is available through the jQuery > Mailing List."http://users.tpg.com.au/j_birch/plugins/superfish/#download > > "Third party "CSS Candy" that is supposed to be inserted in other's > pages should be coded with this issue in mind, protecting all it's > styles in it's own container" > > --i believe that's incorrect, if by "container" you mean unique > classes and id's. as i describe above, unique id's will NOT protect > the component's style from the main site-css, if the site-css cascades > into the candy. Which is exactly what what messed up my superfish > menu. > > "writing styles in-line (if it's not meant to be altered). If this has > not been done it is indeed badly written code." > > --i don't agree. one of the principals of best-practice web- > styling is to NOT use inline styles, but to separate formatting out to > a css file. that way, the web developer can tweak the formatting > without touching the html structure. > > "There is also a reason why !important is seldomly used: because it > makes a mess of figuring out which style is being applied by > overriding the cascading" > > --i dont agree. the mess is what you have without !important. it > instantly clears up that mess, because then you know exactly which css > is controlling the candy-- the one with !important. override the > cascading is exactly the benefit of using !important. The site-css was > not designed to be compatible with your 3rd-party candy. > > i think the reason !important is seldom used, is because it's little- > known, and because it's usually described as a way to resolve > conflicts between web-page and browser-css (aka "author" vs "user"). > > "prepending the unique ID to every style is much better." > --Superfish does indeed use a unique ID. as Klaus points out, > that does not insulate Superfish from the site-css. > > for me, the proof is in the pudding. My silverfish displayed all wrong > without !important. It displays beautifully WITH !important. That's > all the proof i need! > > klaus: > > "a 3rd party widget...should...use...important declarations. > Nevertheless there is no guarantee that the site's CSS will not > override styles." > --why? unless the site css ALSO uses !important, how else could it > override the candy-css?