hannes: Doctype in zwei oder einer Zeile? XML-Deklaration

Hallo,

muss/soll/sollte/... es

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

oder

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

lauten? Weshalb?

Und was ist mit der XML-Deklaration? Soll man nun

<?xml version="1.0" ?>

über den Doctype setzen? Aber da macht mir ja der IE Probleme, wie kann ich das lösen?

Viele Grüße

  1. @@hannes:

    muss/soll/sollte/... es

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    oder

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    lauten? Weshalb?

    Egal. Whitespace ist Whitespace ist Whitespace.

    Ich verwende mitunter

    <!DOCTYPE html  
     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"  
    
    >
    
    

    und auch

    <html  
     xmlns="http://www.w3.org/1999/xhtml"  
     xml:lang="de" lang="de"  
    
    >
    
    

    Und was ist mit der XML-Deklaration? Soll man nun

    <?xml version="1.0" ?>

    über den Doctype setzen?

    Wenn du deine Dokumente in UTF-8 codierst (was ohnehin anzuraten ist), dann ist die XML-Deklaration nicht erforderlich.

    Live long and prosper,
    Gunnar

    --
    Erwebsregel 208: Manchmal ist das einzige, was gefährlicher als eine Frage ist, eine Antwort.
  2. Hallo,

    oder

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    lauten? Weshalb?

    kommt darauf an, ob du meinst, dass 70-80 Zeichen in einer Zeile genug sind;)

    <?xml version="1.0" ?>

    über den Doctype setzen? Aber da macht mir ja der IE Probleme, wie kann ich das lösen?

    Dem betr. IE etwas andere CSS-Anweisungen verpassen.

    Grüsse

    Cyx23

    1. @@Cyx23:

      <?xml version="1.0" ?>
      über den Doctype setzen? Aber da macht mir ja der IE Probleme, wie kann ich das lösen?

      Dem betr. IE etwas andere CSS-Anweisungen verpassen.

      Wie bitte?? In den Quirksmode schalten, um dann alle Fehler wieder mühsam auszubügeln?

      Live long and prosper,
      Gunnar

      --
      Erwebsregel 208: Manchmal ist das einzige, was gefährlicher als eine Frage ist, eine Antwort.
      1. Hallo,

        Wie bitte?? In den Quirksmode schalten, um dann alle Fehler wieder mühsam auszubügeln?

        Wieso nicht. Der IE 6 kann oft sowieso nicht mit moderneren Browsern mithalten.
        Also bei vielen Projekten kein Mehraufwand, im Gegenteil ein Vorteil wenn
        die Extrawürstchen für alte IEs ähnlich ausschauen.

        Grüsse

        Cyx23

        1. Hallo,

          Quirksmode heißt es, wenn ich die XML-Deklaration in die erste Zeile setze? Dann rendert der IE nicht standardkonform. Warum sollte ich das wollen, dann habe ich ja noc mehr workarounds für ihn zu schreiben.

          Außerdem ist es ja optional und utf-8 verwende ich auch, sollte also passen.

          Gruß

          1. Hallo,

            Dann rendert der IE nicht standardkonform. Warum sollte ich das wollen, dann habe ich ja noc mehr workarounds für ihn zu schreiben.

            Weil es u.U. einfacher wird, und weil das Ergebnis vom IE 6 im Modus
            "standardkonform" auch nicht immer ausreicht oder überzeugt, also ggf.
            umfangreich nachgebessert werden muß.

            Den "IE" gibt es ja nicht, gemeint ist hier nur der IE 6. Der rendert dann
            -quirks- so wie IE 5 und 5.5, die je nach Zielgruppe etc. oft immer noch
            berücksichtigt werden müssen.

            Ab IE 7 kann schon eher versucht werden, dem "IE" modernes CSS zuzumuten, und
            der rendert -der IE 8 natürlich auch- im angenommen Fall xhtml1-strict (im
            Gegensatz zum 6er) durchaus "CSS1Compat".

            Es hängt von verschiedenen Dingen ab, welche Strategie besser paßt.

            Falls du z.B. für den IE 6, nicht aber für die 5er, möglichst einfach wie
            hier position fixed per CSS verwirklichen möchtest, ist CSS1-kompatibel nötig.

            Grüsse

            Cyx23

  3. Hi,

    muss/soll/sollte/... es

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    oder

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    lauten? Weshalb?

    das ist reine Geschmackssache - ich bevorzuge den Einzeiler.

    Und was ist mit der XML-Deklaration? Soll man nun

    <?xml version="1.0" ?>

    über den Doctype setzen? Aber da macht mir ja der IE Probleme

    stimmt. Ich setze den Prolog nur dann, wenn der IE6 die Seite standardkonform rendern soll. Sofern es keine Kodierungsprobleme gibt, ist der Prolog ohnehin optional.

    freundliche Grüße
    Ingo

    1. @@Ingo Turski:

      […] ist der Prolog ohnehin optional.

      Nein, im Gegenteil: er ist immer erforderlich. [http://forum.de.selfhtml.org/archiv/2008/4/t170189/#m1112151 ff.]

      Live long and prosper,
      Gunnar

      --
      Erwebsregel 208: Manchmal ist das einzige, was gefährlicher als eine Frage ist, eine Antwort.
      1. Hi,

        […] ist der Prolog ohnehin optional.

        Nein, im Gegenteil: er ist immer erforderlich. [http://forum.de.selfhtml.org/archiv/2008/4/t170189/#m1112151 ff.]

        warum verlinkst Du die XML-Spezifikation, wenn es doch um abwärtskompatibles XHTML geht?
        http://www.w3.org/TR/xhtml1/#strict:
        "An XML declaration is not required in all XML documents; however XHTML document authors are strongly encouraged to use XML declarations in all their documents. Such a declaration is required when the character encoding of the document is other than the default UTF-8 or UTF-16 and no encoding was determined by a higher-level protocol."

        freundliche Grüße
        Ingo

        1. Hallo,

          Gunnar wollte dir sagen, dass »Prolog« der Fachbegriff für die XML-Deklaration *und* die Dokumenttyp-Deklaration ist.
          Die XML-Deklaration ist in gewissen Fällen optional, wie du auch zitiert hast, aber der Dokumenttyp-Deklaration im Falle von XHTML nicht.

          Mathias

        2. @@Ingo Turski:

          warum verlinkst Du die XML-Spezifikation […]?

          Wie molily sagte.

          http://www.w3.org/TR/xhtml1/#strict:
          "An XML declaration is not required in all XML documents; however XHTML document authors are strongly encouraged to use XML declarations in all their documents. […]"

          Wie ich sagte: Diese Empfehlung in der XHTML-Spezifikation war noch nie wirklich sinnvoll.

          Live long and prosper,
          Gunnar

          --
          Erwebsregel 208: Manchmal ist das einzige, was gefährlicher als eine Frage ist, eine Antwort.