list-style-type:none in Firefox
Adriana Mikolaskova Nautsch
- css
Hallo,
ich möchte auf einer bestehenden Website (mit einigen Stylesheets) alle Aufzählungen mit dem list-style-type:none formatiert haben. Die Listen und Listenelemente sind verschiedenen Klassen zugeordnet.
Aus diesem Grund habe ich im letzten stylesheet ul{list-style-type:none;} angefügt, in der Annahme, dass dies die styles aller listen entfernt. Im Konqueror funktioniert das auch so (alle bullets usw. verschwinden), im Firefox (3 Beta 5) bleiben die styles der Listen leider immer noch.
Ist diese Lösung falsch?
Wie kann ich alle vorangehenden bzw. die default-Listen-formatierungen überschreiben (ohne alle eventuellen, den Listen zugeordneten Klassen berücksichtigen zu müssen)?
Danke und Gruss
Adriana Mikolaskova Nautsch
echo ($light == true) ? 'Guten Tag,' : 'Guten Abend,';
als mit
<style type="text/css">
ul,ol {
list-style-type:none;
}
</style>
verschwinden bei mir im Firefox 3 Beta 5 alle Aufzählungszeichen.
Grüße
Markus
<style type="text/css">
ul,ol {
list-style-type:none;
}
</style>
>
> verschwinden bei mir im Firefox 3 Beta 5 alle Aufzählungszeichen.
ja, bei mir auch, nur ist mein konkreter Code komplizierter, mit vielen Klassen, IDs und ich habe nicht ein Stylesheet sondern etwa fünf (das ganze spielt sich in einem CMS ab)
Danke trotzdem und Gruss
--
Adriana Mikolaskova Nautsch
Hallo,
Aus diesem Grund habe ich im letzten stylesheet ul{list-style-type:none;} angefügt, in der Annahme, dass dies die styles aller listen entfernt. [...]
Wie kann ich alle vorangehenden bzw. die default-Listen-formatierungen überschreiben (ohne alle eventuellen, den Listen zugeordneten Klassen berücksichtigen zu müssen)?
Die Reihenfolge und der Ort, wo eine CSS-Angabe steht
(z.B. STYLE-Element im Head oder externe CSS-Datei)
ist nur *ein* Merkmal, welche CSS-Angabe "siegt",
wenn Du mehrere sich widersprechende Angaben hast.
Nur wenn Du mehrere *gleich spezifische* Angaben hast, "siegt"
die zuletzt eingebundene Angabe bzw. diejenige, welche "näher
am Text ist", also z.B. diejenige im STYLE-Element im HEAD
gegenüber der in einem externen CSS-Datei.
Der springende Punkt ist die sogenannte Spezifität (engl. specificity), siehe:
http://www.w3.org/TR/CSS21/cascade.html#specificity
Wenn Du irgendwo schreibst
ul.meineklasse { /* Angabe 1 */ }
hat das immer eine höhere Spezifität als
ul { /* Angabe 2 */}
Selbst wenn die zweite Anweisung in der CSS-Datei steht,
die als letzte eingebunden wird, wird also trotzdem die
erste Anweisung berücksichtigt, da sie spezifischer ist.
Und da ein Selektor mit einer Klasse, also z.B.
ul.meineklasse
immer spezifischer ist als ein Selektor ohne Klasse, hilft es
auch nichts, einen "komplizierteren" Selektor zu nehmen,
der zwar viele Elemente enthält, aber keine Klasse, wie z.B.
html body ul
Dagegen wäre der Selektor
html body div.navigation ul
(mit 4 Elementen und 1 Klasse)
spezifischer (und somit "stärker") als
ul.meineklasse
(mit 1 Element und 1 Klasse)
Am "stärksten" sind übrigens immer die Angaben, die direkt in
einem STYLE-Attribut eines HTML-Elements stehen.
Diese kann man nicht durch Angaben in einem zentralen
Stylesheet übersteuern.
---
Auf die Reihenfolge, in der man externe CSS-Dateien in eine HTML-Datei
einbindet, kann man sich übrigens eh nicht ganz verlassen, wie ich
(vor Jahren) mal in einer Testreihe festgestellt habe:
http://www.tiptom.ch/tests/css_test/css_intro.html#reihenfolge
Damals kam ich zum Schluss:
Wenn man will, dass ein eingebundenes Stylesheet unbedingt
angewendet wird, muss der entsprechende LINK der letzte in
der Liste sein und darf kein TITLE-Attribut haben.
(Wie es mit aktuellen Browsern aussieht, weiss ich allerdings nicht).
Ich hoffe, das hilft Dir weiter.
Freundliche Grüsse
Thomas
(ab sofort offline im Wochenende ;-)
Vielen Dank für Deine Antwort.
In den HTML-Code möchte ich nicht direkt eingreifen, denn es handelt sich um ein Theme eines CMS, d.h. ich möchte eigentlich nur mit CSS arbeiten.
Ich hatte auch die Variante ausprobiert, in der ich die betreffende Klasse dazugenommen hatte- im Konqueror hatte es funktioniert, im Firefox nicht, genauso, wie in einem schon die unspezifischere Variante funktioniert hat.
Deshalb war/bin ich unsicher, was da genau falsch läuft, bzw. ob vielleicht mit der erwähnten Firefox-Version irgendwelche ähnlichen Probleme bekannt sind... Aber offensichtlich nicht, d.h. ich werde weiter suchen, was da der Grund sein könnte- das mit der Anzahl Elementen vor dem klassifizierten Element werde ich noch überprüfen, das könnte etwas helfen...
Danke und Gruss
...habe noch diverse Varianten ausprobiert, unter berücksichtigung der oben genannten Hinweise, hat leider nichts genützt: Wenn ich die Web-Developer-Erweiterung von Firefox auf Edit-CSS gesetzt habe, verschwinden die list-style-types allerdings, wie in den Stylesheets beschrieben...
Kennt jemand die Erklärung dafür?
Danke und Gruss
Hi,
Adriana Mikolaskova Nautsch
ich kann ja nur mutmaßen ... aber schreibt sich dein Familienname nicht eigentlich "Nauč"? Hast du ihn hier absichtlich eingedeutscht?
Ich habe geschäftlich ab und zu mit den Kollegen in unserer tschechischen Niederlassung zu tun, und dort hauptsächlich mit einem Herrn Nauč - daher die Frage.
Schönes Wochenende noch,
Martin
Hallo
Der Name ist nicht eingedeutscht, der ist Deutsch (ich habe einen Doppelnamen). Dass es ihn im tschechischen auch gibt, war mir nicht bekannt
Gruss