Matzberger Marcus: alternate stylesheet und @import

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

  1. 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

    1. 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="a&#108;l". 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

      1. hi,

        im Archiv habe ich http://forum.de.selfhtml.org/archiv/2003/3/41865/#m229039 gefunden. Dort stand etwas von media="a&#108;l". Das schien mir dann doch etwas suspekt.

        &#108; 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="a&#108;l" , wobei &#108; = l ist, versteckt das Style Sheet vor Opera.

        gruss,
        wahsaga

  2. 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:

    • dass die formate.css auf jeden Fall zum Einsatz kommt
    • die farben_blau.css als "normales" Stylesheet
    • die farben_kontraste.css als auswaehlbares "alternatives"
        Stylesheet z.B. fuer Mozilla.

    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

    --
    Bitte keine Mails mit Fachfragen - dafuer gibt es das Forum!
    Ich mag es, wenn URLs verlinkt sind (</faq/#Q-19>).
    Oft gestellte PHP-Fragen beantwortet die dclp-FAQ bestens: http://www.dclp-faq.de/