StyleSheet von wo anders weniger wert?
niklaskamenisch
- css
hi,
ich hatte vor paar Tagen einen Fall, bei dem ein Stylesheet auf unserem Share-Server lag (share.xyz.de). Dort wurde die ID oder Class definiert, die ich überall gleich haben will (ist für ein CMS). Im Kundenweb habe ich dann bemerkt, dass die dort definierte *-Regel die Class überschrieben hat.
Mir ist natürlich bekannt, dass Stylesheets je nach Herkunft bewertet werden. Das aber ein fremder Webspace auch berücksichtigt wird, war mir neu. Zudem ja eine "all" regel nicht so viel wert sein kann, dass sie eine class überschreibt oder eventuell auch eine ID.
Zufall? Bug im Firefox? Eventuell JQuery problem (es ging dort um den Datepicker von Jquery-UI)?
Ich brauch hier keine Lösung, wollte nur fürs Verständnis wissen, wo ich externe Files von der Bewertung her einsortieren muss. Und vorallem ob das die volle Domain berücksichtigt (also sub-domains auch schon schon fremd sind).
Ach ja, das Verhalten hatte ich egal, in welcher Reihenfolge, die beiden CSS-Dateien eingebunden wurden!
Gruß Niklas
hi,
Ach ja, das Verhalten hatte ich egal, in welcher Reihenfolge, die beiden CSS-Dateien eingebunden wurden!
also ich dachte, es kommt auf die reihenfolge an. vielleicht hat dich hier der browsercache getrickst? und dann natürlich ist #myid p.myclass "stärker" als .myclass zb.. also es kommt darauf an, ob die deklarationen ident sind.
mfg
tami
hi,
hi,
Ach ja, das Verhalten hatte ich egal, in welcher Reihenfolge, die beiden CSS-Dateien eingebunden wurden!
also ich dachte, es kommt auf die reihenfolge an. vielleicht hat dich hier der browsercache getrickst? und dann natürlich ist #myid p.myclass "stärker" als .myclass zb.. also es kommt darauf an, ob die deklarationen ident sind.
Browsercache ist hart abgeschalten über about:config ... udn hab ich auch ausprobiert.
wie gesagt * war über dem # mir ist die normal abfolge ja bekannt ;)
mfg
tami
Gruß Niklas
Hi,
Mir ist natürlich bekannt, dass Stylesheets je nach Herkunft bewertet werden.
das werden sie nicht.
Zudem ja eine "all" regel nicht so viel wert sein kann, dass sie eine class überschreibt oder eventuell auch eine ID.
In der Tat. Hierzu müsste man wissen, welche Regeln tatsächlich greifen, und ob die ganze Regel betroffen ist oder eventuell nur (mit !important notierte) einzelne Deklarationen.
Zufall? Bug im Firefox? Eventuell JQuery problem (es ging dort um den Datepicker von Jquery-UI)?
jQuery setzt üblicherweise Werte in der .style-Collection, welche eine höhere Spezifität hat als siebzehn Milliarden IDs.
Ich brauch hier keine Lösung, wollte nur fürs Verständnis wissen, wo ich externe Files von der Bewertung her einsortieren muss.
An exakt der selben Stelle wie einen <style>-Block, der direkt im Dokument steht. Für die Rangordnung sind die Spezifität des Selektors (wobei die .style-Collection bzw. das style-Attribut hier als Selektor gelten), !important-Angaben sowie die *Art* des Stylesheets wichtig - also ob es sich um ein Stylesheet des Autors, des Browsers oder des Nutzers handelt.
Ach ja, das Verhalten hatte ich egal, in welcher Reihenfolge, die beiden CSS-Dateien eingebunden wurden!
Überprüfe, wie Firebug die Regeln auflistet. Achte auch auf !important.
Cheatah
Hi,
vergessenes Detail:
Für die Rangordnung sind die Spezifität des Selektors (wobei die .style-Collection bzw. das style-Attribut hier als Selektor gelten), !important-Angaben sowie die *Art* des Stylesheets wichtig - also ob es sich um ein Stylesheet des Autors, des Browsers oder des Nutzers handelt.
Bei gleichwertigen Ergebnissen ist es die Reihenfolge, aber eben erst dann.
Cheatah
Zufall? Bug im Firefox? Eventuell JQuery problem (es ging dort um den Datepicker von Jquery-UI)?
jQuery setzt üblicherweise Werte in der .style-Collection, welche eine höhere Spezifität hat als siebzehn Milliarden IDs.
Ganz im Gegenteil: jQuery UI arbeitet wo es geht mit Klassen. http://jqueryui.com/docs/Theming/API
hi,
Hi,
Mir ist natürlich bekannt, dass Stylesheets je nach Herkunft bewertet werden.
das werden sie nicht.
ich hatte mich auf autor -> user -> user !important bezogen!
Zudem ja eine "all" regel nicht so viel wert sein kann, dass sie eine class überschreibt oder eventuell auch eine ID.
In der Tat. Hierzu müsste man wissen, welche Regeln tatsächlich greifen, und ob die ganze Regel betroffen ist oder eventuell nur (mit !important notierte) einzelne Deklarationen.
Nein war in dem fall nur font-size ohne irgend ein !important in der ganzen datei)
Zufall? Bug im Firefox? Eventuell JQuery problem (es ging dort um den Datepicker von Jquery-UI)?
jQuery setzt üblicherweise Werte in der .style-Collection, welche eine höhere Spezifität hat als siebzehn Milliarden IDs.
Ich brauch hier keine Lösung, wollte nur fürs Verständnis wissen, wo ich externe Files von der Bewertung her einsortieren muss.
An exakt der selben Stelle wie einen <style>-Block, der direkt im Dokument steht. Für die Rangordnung sind die Spezifität des Selektors (wobei die .style-Collection bzw. das style-Attribut hier als Selektor gelten), !important-Angaben sowie die *Art* des Stylesheets wichtig - also ob es sich um ein Stylesheet des Autors, des Browsers oder des Nutzers handelt.
Ach ja, das Verhalten hatte ich egal, in welcher Reihenfolge, die beiden CSS-Dateien eingebunden wurden!
Überprüfe, wie Firebug die Regeln auflistet. Achte auch auf !important.
Cheatah
Gruß Niklas