alternate stylesheet und @import
Matzberger Marcus
- css
Hallo,
um den Besuchern ein paar Freiheiten zu geben möchte ich verschiedene Stylesheets einbinden nach der Art:
<link rel="stylesheet" type="text/css" href="formate.css" media="screen, projection">
<link rel="stylesheet" type="text/css" href="farben_blau.css" media="screen, projection" title="blau">
href="farben_kontrast.css" media="screen, projection" title="kontrast">
<link rel="stylesheet" type="text/css" href="print.css" media="print">
Es gibt also die Seite in 'blau', 'kontrast' und 'print'.
Jetzt gibt es aber das Problem, dass das Standard-Stylesheet für den NN4.7 ungeeignet ist. Ich würde gerne mit @import arbeiten, aber ich finde keine Syntax-Beschreibung.
<style type="text/css"> @import url(formate_nichtNN.css);</style>
Kann ich alternative Stylesheets auch mit @import einbinden?
oder kann ich das innerhalb des Standardstylesheets machen?
Grüße
Marcus
N'Obend
media="screen, projection"
...
Jetzt gibt es aber das Problem, dass das Standard-Stylesheet für den NN4.7 ungeeignet ist. Ich würde gerne mit @import arbeiten, aber ich finde keine Syntax-Beschreibung.
N4.7 benutzt nur mit media="screen" oder gar nichts ausgezeichnete CSS-Dateien. Von deinen bekommt er also gar keins zu sehen.
Du kannst noch eins ohne media="" davorschalten, nur für N4.7. Abweichende Angaben sollten dann halt in den anderen überschrieben werden.
(es gibt natürlich auch noch andere Browserweichen (z.B. mit Kommentaren), aber wenn du es eh schon so hast :) )
Tschö,
dbenzhuser
Hallo,
N4.7 benutzt nur mit media="screen" oder gar nichts ausgezeichnete CSS-Dateien. Von deinen bekommt er also gar keins zu sehen.
Du kannst noch eins ohne media="" davorschalten, nur für N4.7. Abweichende Angaben sollten dann halt in den anderen überschrieben werden.
(es gibt natürlich auch noch andere Browserweichen (z.B. mit Kommentaren), aber wenn du es eh schon so hast :) )
im Archiv habe ich http://forum.de.selfhtml.org/archiv/2003/3/41865/#m229039 gefunden. Dort stand etwas von media="all". Das schien mir dann doch etwas suspekt.
Wenn NN4.7 aber schon mit media="screen + x" ausgetrickst wird, dann ist es wohl schon erledigt
Grüße
Marcus
hi,
im Archiv habe ich http://forum.de.selfhtml.org/archiv/2003/3/41865/#m229039 gefunden. Dort stand etwas von media="all". Das schien mir dann doch etwas suspekt.
l ist ein 'l', womit diese schreibweise in der _html-anzeige_ wieder auf media="all" herauskommen würde.
wahrscheinlich hat hier das archiv einfach mal wieder ein bisschen mit den zeichen rumgemurkst, macht es ab und zu.
ach ja, jetzt sehe ich es, steht ja auch im von dir verlinkten archiv-eintrag:
media="all" , wobei l = l ist, versteckt das Style Sheet vor Opera.
gruss,
wahsaga
Hallo,
Vermutlich hast Du bei der dritten Zeile den Anfang
<link rel="stylesheet" type="text/css"
vergessen. Ich nehme mal an, Du meintest folgendes:
<link rel="stylesheet" type="text/css" href="formate.css" media="screen, projection">
<link rel="stylesheet" type="text/css" href="farben_blau.css" media="screen, projection" title="blau">
<link rel="stylesheet" type="text/css" href="farben_kontrast.css" media="screen, projection" title="kontrast">
<link rel="stylesheet" type="text/css" href="print.css" media="print">
In der Theorie
http://www.w3.org/TR/REC-html40/present/styles.html#h-14.3
sieht es so aus: formate.css (ohne TITLE-Attribut eingebunden,
somit "persistent") wird (bei screen oder projection) auf jeden
Fall benutzt.
In Mozilla kann man es ueber
View -> Use Style -> Basic Page Style
nicht abschalten.
Die LINK-Elemente zum Einbinden von farben_blau.css und
arben_kontrast.css haben ein TITLE-Attribut, diese Stylesheets
sind somit beide "preferred". Nach der Theorie sollte das erste
wichtiger sein als das zweite, hier also farben_blau.css.
Vermutlich kann man bei Mozilla jetzt auswaehlen zwischen
"Basic Page Style", "blau" und evtl. "kontrast".
Vielleicht hilft Dir mein etwas aelterer Text
zu mehreren CSS-Dateien weiter:
http://www.tiptom.ch/tests/css_test/css_intro.html
In meinen Tests stellte ich damals fest, dass die
Browser die Geschichte mit mehreren Stylesheets
etwas eigenwillig interpretieren und die Reihenfolge
anders gewichten.
Ein Stylesheet, das auf jeden Fall zum Einsatz kommen
soll, sollte als letztes eingebunden werden und das
LINK-Element sollte kein TITLE-Attribut haben.
Ich nehme an, dass Du willst:
Dann waere wohl folgende Reihenfolge sinnvoll:
<link rel="stylesheet" type="text/css" href="print.css" media="print">
<link rel="stylesheet" type="text/css" href="formate.css" media="screen, projection">
<link rel="stylesheet" type="text/css" href="farben_blau.css" media="screen, projection" title="blau">
<link rel="alternate stylesheet" type="text/css" href="farben_kontrast.css" media="screen, projection" title="kontrast">
oder so:
<link rel="stylesheet" type="text/css" href="print.css" media="print">
<link rel="stylesheet" type="text/css" href="farben_blau.css" media="screen, projection" title="blau">
<link rel="alternate stylesheet" type="text/css" href="farben_kontrast.css" media="screen, projection" title="kontrast">
<link rel="stylesheet" type="text/css" href="formate.css" media="screen, projection">
(Das Print-Stylesheet wuerde ich als erstes angeben.)
Kann ich alternative Stylesheets auch mit @import einbinden?
Die einzige mir bekannte Syntax fuer alternative Stylesheets
benuetzt das <link>-Element mit dem Attribut
rel="alternate stylesheet"
Die ganze Geschichte von "persistent", "preferred" und
"alternate" ist AFAIK auch nur in HTML definiert (s. oben),
und nicht in CSS.
Gruesse,
Thomas