User-Stylesheet im IE: Ein Witz?
-3 0 0
0 0
0 User-Stylesheet im IE: Meine Testbedingungen
-1 Probier mal Firefox
0
1 0 0 0
0 0 0 0 0 0 0 0 0
n'Abend allerseits!
Dieser Thread von heute nachmittag hat mich mal wieder daran erinnert, dass ich doch schon lange mal ausprobieren wollte, was man im IE mit User-Stylesheets so alles anstellen kann. Die Fragestellung des OP brachte mich beispielsweise auf die Idee, so lästiges Zeug wie umgefärbte Scrollbars mit einem User-Stylesheet wieder mit den Standardwerten zu überschreiben und den Unfug so zu unterbinden.
Da ich auf die Schnelle kein Fallbeispiel für eine Seite mit modifizierten Scrollbars zur Hand hatte, habe ich andere CSS-Eigenschaften zum Testen verwendet: Ich habe in meinem User-CSS body {background-color: #F00; } definiert. So, über Tools/Internet Options/Accessibility/User Stylesheet die CSS-Datei eingetragen, fertig.
Dann ein paar Seiten zum Testen aufgerufen: Ernüchterung. Auf keiner der gewählten Beispielseiten war mein gifitg-roter Hintergrund zu sehen. Nach einigem Experimentieren habe ich schließlich folgendes festgestellt:
Das User-Stylesheet des IE überschreibt nicht die Vorgaben des Seitenerstellers, sondern umgekehrt! Das User-Stylesheet liefert eigentlich nur Defaultwerte, die sowohl von style-Definitionen im <head>, als auch von extern eingebundenen CSS-Ressourcen, als auch inline-Styles überschrieben werden! IE6 und 5.5verhalten sich hier übrigens identisch.
Bin ich zu doof? Oder eher Microsoft?
Denn so geht das Verhalten ja wohl völlig am Zweck vorbei, zumal es laut MS-Darstellung auch dazu gedacht ist, Menschen mit Behinderungen oder Schwächen das Überschreiben der für die ungünstigen Formatierungen des Seitenautors zu überschreiben. Das Ganze läuft ja nicht ohne Grund unter dem schönen Begriff "Accessibility Options".
Schade, hätte eigentlich eine prima Sache sein können. Aber so ...
Oder habe ich wirklich etwas übersehen? Hat schonmal jemand Erfahrungen mit dieser Möglichkeit gemacht?
Schönen Abend noch,
Martin
Hi there,
Das User-Stylesheet des IE überschreibt nicht die Vorgaben des Seitenerstellers, sondern umgekehrt!
Deine Sorgen möcht' ich haben...
hi,
Das User-Stylesheet des IE überschreibt nicht die Vorgaben des Seitenerstellers, sondern umgekehrt!
Gebrauch von !important mal versucht?
Bin ich zu doof? Oder eher Microsoft?
Oder habe ich wirklich etwas übersehen?
Waren deine Selektoren wirklich stärker, als die der Seitenstyles?
Du sagst, du das body formatiert - wenn nun die Testseite selber body.klasse formatiert hätte ...
gruß,
wahsaga
Hallo,
Gebrauch von !important mal versucht?
ja, hab ich probiert, aber ziemlich leidenschaftslos: Soweit ich weiß, kennt der IE diese Direktive gar nicht. Erwartungsgemäß hat es auch am Verhalten nichts geändert.
Waren deine Selektoren wirklich stärker, als die der Seitenstyles?
Nein, sie waren identisch. Vom Anwendungszweck her gesehen möchte ich ja keine spezifischeren Selektoren im User-Stylesheet, sondern eher sogar allgemeinere.
Ich hatte nachher eine minimalistische Testseite, die im body nur noch ein p und ein div-Element ohne jegliche Klassen und IDs enthielt, und habe im CSS auch nur den Elementselektor verwendet.
Du sagst, du das body formatiert - wenn nun die Testseite selber body.klasse formatiert hätte ...
Ein interessanter Aspekt - aber bei meiner Mini-Testseite nicht relevant. Dennoch würde ich mir wünschen, dass eine Definition für body im User-Stylesheet auch die spezifischere für body.klasse überschreibt (auch wenn das ansonsten den Gewichtungsregeln für CSS-Selektoren widerspricht).
So long,
Martin
Hallo,
Dieser Thread von heute nachmittag hat mich mal wieder daran erinnert, dass ich doch schon lange mal ausprobieren wollte, was man im IE mit User-Stylesheets so alles anstellen kann. Die Fragestellung des OP brachte mich beispielsweise auf die Idee, so lästiges Zeug wie umgefärbte Scrollbars mit einem User-Stylesheet wieder mit den Standardwerten zu überschreiben und den Unfug so zu unterbinden.
Da ich auf die Schnelle kein Fallbeispiel für eine Seite mit modifizierten Scrollbars zur Hand hatte,
http://de.selfhtml.org/css/eigenschaften/anzeige/scrollbars.htm
Das User-Stylesheet des IE überschreibt nicht die Vorgaben des Seitenerstellers, sondern umgekehrt! Das User-Stylesheet liefert eigentlich nur Defaultwerte, die sowohl von style-Definitionen im <head>, als auch von extern eingebundenen CSS-Ressourcen, als auch inline-Styles überschrieben werden! IE6 und 5.5verhalten sich hier übrigens identisch.
Bin ich zu doof? Oder eher Microsoft?
Wenn du die User-CSS mit der aktivierung der darüber befindlichen Optionen (Farben, Schriftarten, Schriftgröße von Webseiten ignorieren) verwendest, funktionier das schon. Nur du muss das für alle HTML-Elemente dann definitionen angeben, sonst kann sein, dass du eine absolute "leere" Seite mit bunten Scrollbars siehst .
Grüße
Thomas
Hallo Thomas,
Bin ich zu doof? Oder eher Microsoft?
Wenn du die User-CSS mit der aktivierung der darüber befindlichen Optionen (Farben, Schriftarten, Schriftgröße von Webseiten ignorieren) verwendest, funktionier das schon.
Ah, na gut, das klingt logisch. Aber ich will ja nicht pauschal z.B. alle Farbangaben außer Kraft setzen, sondern nur selektiv für bestimmte Elemente überschreiben.
Thanks anyway,
Martin
Hi,
zum besseren Nachvollziehen: Das hier waren meine endgültigen Testbedingungen.
--- [test.htm] -----------------
<html>
<head>
<title>User CSS im</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<link rel="stylesheet" type="text/css" href="test.css">
<style type="text/css">
body { background-color: #8080FF; }
p { background-color: #C0C0FF; color: #0000FF; }
div { border: 1px solid #FF0000; }
</style>
</head>
<body>
<p>Textabsatz.</p>
<div>div-Block</div>
</body
</html>
--- [test.css] -----------------
body { background-color: #FFFF00; }
p { background-color: #0000FF; color: #FFFFFF; }
div { border: 1px solid #00FF00; }
--- [user.css] -----------------
body { background-color: #FF0000; }
p { background-color: #00FF00; color: #000000; }
div { border: 1px solid #000000; }
Zum Testen hab ich sukzessive immer an einer Stelle (CSS im <head>, externes Stylesheet) eine Eigenschaft weggelassen und geprüft, welcher der unterschiedlichen Werte sich dann durchsetzt. Die Werte aus dem User-CSS hatten dabei *immer* die niedrigste Priorität und haben sich gegen keine andere Angabe durchgesetzt.
Ciao,
Martin
Hi,
Ich weiß jetzt nicht, ob es jetzt wirklich nur um den Internet Explorer geht, oder generell um die Möglichkein, eigene Farben für Webseiten zu verwenden. Jedenfalls geht's mit Firefox. Wenn man die Einstellung "Seiten das Verwenden der eigenen statt der gewählter Einstellung erlauben" entfernt. Ob das auch mit kompletten eigenen Stylesheets geht, kann ich dir aber leider nicht sagen.
Einen schönen Donnerstag noch!
Hallo,
Ich weiß jetzt nicht, ob es jetzt wirklich nur um den Internet Explorer geht, oder generell um die Möglichkein, eigene Farben für Webseiten zu verwenden.
den Eindruck habe ich auch.
Ja, es geht mir im Moment ganz konkret um die Möglichkeiten im IE. Dass das bei anderen Browsern, vor allem Opera, teils wesentlich besser geht, ist mir bekannt. Das ist aber nicht das Thema.
Ciao,
Martin
Hallo Martin,
Das User-Stylesheet des IE überschreibt nicht die Vorgaben des Seitenerstellers, sondern umgekehrt!
Was nach http://www.w3.org/TR/CSS21/cascade.html#cascading-order auch korrekt ist. Nur die User-!important-Rules überschreiben die Autor-!important-Rules, die normalen Autor-Rules überschreiben dagegen die normalen User-Rules.
Und der IE 6.0.2800.1106 unter Linux macht's bei mir richtig - auch !important kann er und setzt es korrekt gemäß CSS 2.1 um - zumindest wenn ich keinen Fehler beim Test gemacht habe. Man muss ihn allerdings neu starten, damit das User-CSS wirksam wird.
Viele Grüße,
Christian
Hallo Christian,
Nur die User-!important-Rules überschreiben die Autor-!important-Rules, die normalen Autor-Rules überschreiben dagegen die normalen User-Rules.
ah, danke. Das war mir auch noch nicht bekannt.
Und der IE 6.0.2800.1106 unter Linux macht's bei mir richtig - auch !important kann er und setzt es korrekt gemäß CSS 2.1 um - zumindest wenn ich keinen Fehler beim Test gemacht habe. Man muss ihn allerdings neu starten, damit das User-CSS wirksam wird.
Mein 5.5er zeigt sich von !important völlig unbeeindruckt, übernimmt aber dafür Änderungen der User-CSS-Einstellungen ohne Browser-Neustart: Beim Klick auf OK im entsprechenden Einstelldialog werden alle geöffneten Browserfenster sofort aktualisiert.
Den Test von !important im ungeliebten 6er kann ich morgen nochmal nachprüfen. Heute mittag wollte er davon irgendwie nix wissen. Und ich habe in der Firma auch einen 6.0.2800.irgendwas, oder mit bürgerlichem Namen IE6/SP1 unter Win2k/SP4.
So long,
Martin
Hallo Christian,
Und der IE 6.0.2800.1106 unter Linux macht's bei mir richtig - auch !important kann er und setzt es korrekt gemäß CSS 2.1 um - zumindest wenn ich keinen Fehler beim Test gemacht habe. Man muss ihn allerdings neu starten, damit das User-CSS wirksam wird.
ich hab heute noch einmal versucht, das mit einem IE6 nachzuvollziehen - und kann dir zustimmen, auch mit IE6/Win. Mittlerweile weiß ich auch, warum es bei mir gestern nicht funktionieren wollte: Ein einfacher Syntaxfehler im CSS. Ich habe unbewusst und automatisch ein Semikolon zwischen der CSS-Regel und dem !important gesetzt.
Wieder daheim, habe ich das auch mit dem 5.5er noch einmal getestet - auch in Ordnung! Mit !important und mit der *richtigen* Notation übernimmt er jetzt auch die Regeln aus dem User-CSS so, wie ich sie eigentlich wollte, nämlich mit höchster Priorität.
Der 5.5er hat gegenüber dem 6er sogar die Nase vorn, was das Handling betrifft: Ein Browserneustart ist nicht nötig, da Änderungen beim Bestätigen des entsprechenden Einstelldialogs in der Internet-Systemsteuerung sofort in allen offenen Browserfenstern live übernommen werden.
Fazit: Ich sehe das User-Stylesheet im IE nun als eine weitere gute Möglichkeit, störende Formatierungen auf Webseiten (z.B. bunt gefärbte Scrollbalken) einfach auszuhebeln. Werde ich beibehalten!
Danke an alle, die hier mitgewirkt haben!
Schönes Wochenende,
Martin
Hello,
kleine Nebenfrage.
Wenn ich beim IE5.5 ein Userstylesheet einrichte, kann ich damit kein Online-Banking mehr machen.
Ist das auch ok so?
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Moin!
Wenn ich beim IE5.5 ein Userstylesheet einrichte, kann ich damit kein Online-Banking mehr machen.
Ist das auch ok so?
Das ist OK so, mit dem IE sollte man in keiner Version Online-Banking machen. :)
- Sven Rautenberg
Hello,
Ist das auch ok so?
Das ist OK so, mit dem IE sollte man in keiner Version Online-Banking machen. :)
Das ist ein Argument.
Und wenn ich jetzt lese, was in dem IE 6.x wieder so alles aufgetaucht ist...
BTW: Die Leute von http://www.buerger-cert.de/ haben ihre Seite immer noch nicht repariert. Mit dem IE 5.5 bekommt man immer noch keine Navigation und Impressum ;-)
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Hallo Tom,
kleine Nebenfrage.
Wenn ich beim IE5.5 ein Userstylesheet einrichte, kann ich damit kein Online-Banking mehr machen.
das kann ich nicht nachvollziehen. Ich habe das gerade (auch mit einem 5.5er, genauer: 5.50.2807.2300 unter Win2k/SP4) mal nachgeprüft. Kein Problem! Ich könnte auch rational nicht nachvollziehen, was das miteinander zu tun haben könnte.
Ist das auch ok so?
Nein, bestimmt nicht. Da muss noch an einer anderen Stelle der Wurm drin sein.
So long,
Martin
Hi!
Wenn ich beim IE5.5 ein Userstylesheet einrichte, kann ich damit kein Online-Banking mehr machen.
Welches Online-Banking?
Ist das auch ok so?
Nein. Zumindest das Online-Banking der Sparkassen-Informatik funktioniert auch mit User-Stylesheets.
Gruß aus Iserlohn
Martin
Hello,
Welches Online-Banking?
Ich werde die Namen der Spender nicht nennen ;-))
Es ist mir schon bei mehreren passiert.
Das muss was mit den Applets zu tun haben. Die scheinen die Kontrollsumme der Seiten zu ckecken.
Wie das genau funktioniert, ist mir zwar noch nicht ganz klar, aber denkbar wäre es.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
HI!
Es ist mir schon bei mehreren passiert.
Das muss was mit den Applets zu tun haben. Die scheinen die Kontrollsumme der Seiten zu ckecken.
OK, dann war es nicht unsers - keine Applets...
Gruß aus Iserlohn
Martin
Hello,
OK, dann war es nicht unsers - keine Applets...
Nö, keine Panik :-)
Die Online-Banking-Seite von der Sparkasse hier funktioniert bei mir auch mit User-Stylesheets.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Hi,
Die Online-Banking-Seite von der Sparkasse hier funktioniert bei mir auch mit User-Stylesheets.
Übrigens... ich hatte meiner Sparkasse kürzlich mal eine Mail geschrieben und auf wirklich üble Zustände hingewiesen (Onlinebanking öffnete sich im Popup und das Überweisungsformular hierin noch in einem Frame) - und das wurde erfreulicherweise abgestellt. Dennoch war die Verbesserung nur sehr halbherzig und das Onlinebanking ist nach wie vor nur über Javascript erreichbar. Auch muß ich mein User-CSS noch nutzen, um das Überweisungsformular vernünftig zu formatieren. Irgendwie haben die es noch nicht kapiert, daß man bei Verwendung diktengleicher Schriften die Breite der Eingabefelder in em so festlegen kann, daß sie ziemlich genau der Maximallänge entspricht - und daß man das Formular und die Schrift ruhig etwas größer machen kann, um Fehleingaben vorzubeugen.
freundliche Grüße
Ingo
Hello Ingo,
Die Online-Banking-Seite von der Sparkasse hier funktioniert bei mir auch mit User-Stylesheets.
Übrigens... ich hatte meiner Sparkasse kürzlich mal eine Mail geschrieben und auf wirklich üble Zustände hingewiesen (Onlinebanking öffnete sich im Popup und das Überweisungsformular hierin noch in einem Frame) - und das wurde erfreulicherweise abgestellt. Dennoch war die Verbesserung nur sehr halbherzig und das Onlinebanking ist nach wie vor nur über Javascript erreichbar. Auch muß ich mein User-CSS noch nutzen, um das Überweisungsformular vernünftig zu formatieren. Irgendwie haben die es noch nicht kapiert, daß man bei Verwendung diktengleicher Schriften die Breite der Eingabefelder in em so festlegen kann, daß sie ziemlich genau der Maximallänge entspricht - und daß man das Formular und die Schrift ruhig etwas größer machen kann, um Fehleingaben vorzubeugen.
Es ist wahr.
Manche Banken und Sparkassen habe da wirklich grausame Anwendungen
Allerdings zeigt us das doch, dass die Dinge von Menschen gemacht werden.
Außerdem sollte Unternehmen in ihrer Kommunikationsstruktur offener werden, und wenn eine Mängelrüge zu diesem Thema eintrifft, dieser auch nachgehen und ggf. Rücksprache halten.
Das Wissen liegt manchmal auf der Straße, man muss es nur aufsammeln :-)
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Hallo.
Irgendwie haben die es noch nicht kapiert, daß man bei Verwendung diktengleicher Schriften die Breite der Eingabefelder in em so festlegen kann, daß sie ziemlich genau der Maximallänge entspricht
Das kapiere ich aber auch nicht. Wie soll das funktionieren? Eine dicktengleiche 10-Pitch-Schriftart läuft zwangsläufig immerhin zwanzig Prozent breiter als eine dicktengleiche 12-Pitch-Schrift. Gilt das bei dir schon als "ziemlich genau"? Und die em beziehen sich ja auf die Kegelhöhe und nicht auf die Laufweite.
MfG, at
Hi,
Das kapiere ich aber auch nicht. Wie soll das funktionieren?
Schau's Dir einfach an: so.
freundliche Grüße
Ingo