janni: Internet Explorer 10

Ein Beispiel aus mehreren gleicher Art:
Eine xhtml-Webseite ist beispielsweise mit dem Stylesheet verlinkt über die Angabe im head:
<link  href="styles/varitext.css" type="text/css" rel="stylesheet" media="screen" />
Die xhtml-Datei und die css-Datei sind jeweils W3C validiert.
Alle Browser, IE10, IE9, FF, Chrome, Opera und Safari zeigen die Seite "online" richtig an, alle, mit Ausnahme von IE10, auch offline, also auf meinem Rechner.
Der IE10 ignoriert hier das Stylesheet und zeigt lediglich den unformatierten Inhalt.
(Betriebssystem Windows 7/32 aktuell updated)
Wo sollte ich suchen, um den Fehler zu korrigieren?
Danke für Hinweise.

  1. Hallo janni,

    das Problem kann ich nicht nachvollziehen (Windows 8, IE 10). Welche Dateiendung verwendest du? .html oder .xhtml?

    XHTML wird nicht weiterentwickelt, daher kannst du genauso auf HTML 5 umsteigen und sparst dir damit potenzielle Probleme. Die Verarbeitung von XHTML 1.x als XML wird zwar unterstützt, beinhaltet aber einige Fallstricke.

    HTML 5 hat auch einen XML-Modus, aber wenn du den nicht unbedingt brauchst, kannst du einfach die Standard-Syntax verwenden:

    <!DOCTYPE html>  
    <html>  
      <head>  
        <meta charset="utf-8">  
        <title></title>  
        <link rel="stylesheet" href="styles.css">  
      </head>  
      <body>  
        <h1>here be dragons</h1>  
      </body>  
    </html>
    

    Als Dateiendung verwendest du dann .html.

    Das sollte garantiert auch Offline im IE10 funktionieren.

    Grüße,
    Mathias

    1. Hallo molly,

      du schreibst…

      <link rel="stylesheet" href="styles.css">

      also du lässt das type und das media Attribute weg. War das jetzt mit Absicht?

      Sind diese Attribute nicht notwendig, kann ich die weglassen, ohne das irgendein Client/Device damit Probleme bekommt. Der type="text/css" wundert mich eh, da mir kein anderer type beim rel="stylesheet" vorgekommen ist.

      Meine Frage also: sind diese Attribute optional?

      bester gruß quincunx

      1. @@Quincunx:

        nuqneH

        <link rel="stylesheet" href="styles.css">

        also du lässt das type und das media Attribute weg. War das jetzt mit Absicht?

        @type="text/css" ist in HTML5 überflüssig.

        @media sollte man besser nicht in HTML verwenden.

        Qapla'

        --
        „Talente finden Lösungen, Genies entdecken Probleme.“ (Hans Krailsheimer)
      2. Der type="text/css" wundert mich eh, da mir kein anderer type beim rel="stylesheet" vorgekommen ist.

        XSL wäre eine andere Stylesheet-Sprache.

        Meine Frage also: sind diese Attribute optional?

        Jop, siehe: http://www.w3.org/TR/html51/links.html#link-type-stylesheet
        "The default type for resources given by the stylesheet keyword is text/css."

      3. Hallo,

        <link rel="stylesheet" href="styles.css">

        also du lässt das type und das media Attribute weg. War das jetzt mit Absicht?

        type ist wie gesagt implizit und in HTML 5 weglassbar. Und die Angabe media="screen" ist sowohl im HTML als auch im CSS (@media screen {…}) für überflüssig, solange du nicht absichtlich von print unterscheiden willst oder Media-Queries einsetzt.

        Zwar definiert CSS 2.1 eine Reihe von Medientypen, aber in der Praxis werden nur screen und print breit unterstützt. Natürlich gibt es braille, handheld, projection, speech und tv als tatsächliche Ausgabemedien, aber in keinem dieser Fälle wenden die jeweiligen Browser Styles für diesen Medientyp an. D.h. TV-Browser wenden nicht tv an, Screenreader wenden nicht braille oder speech an, und Smartphones wenden nicht handheld an. Der aktuelle Desktop-Opera (Presto) unterstützt meines Wissens projection im Vollbildmodus, aber das ist eine Ausnahme.

        Daher schließt die Angabe von media="screen" im HTML lediglich print aus. Ob das überhaupt nötig ist, muss im Einzelfall entschieden werden. Wie Gunnar sagt, reicht es hier gegebenenfalls, in einem @media print {}-Block im selben Stylesheet Anpassungen vorzunehmen.

        Grüße,
        Mathias