Dada: XML-Deklaration nötig?

Guten Abend allerseits,

ich werde im Moment aus der selfhtml- und w3.org-Dokumentation nicht ganz schlau, ob in einer Datei für eine Internetseite
(
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
...)
die XML-Deklaration nun - und sei`s für die Korrektheit - notwendig ist oder nicht.
Einmal heißt es, dass sie notiert werden sollte (bzw. "authors are strongly encouraged to use XML declarations"), ein andermal steht dann aber zu lesen, dass der MS IE damit Probleme...
Wie soll ich nun verfahren?
Ich weiß allerdings auch nicht, wie der MS IE die validen Seiten ohne die XML-Deklaration anzeigen würde, da ich keinen auf meinem System habe.
Steckt hinter dem Wechsel von xhtml1.0-strict zu xhtml1.1 mehr als nur eine Namensänderung?
Danke im Voraus,

mit Gruß
Dada

  1. Hi,

    die XML-Deklaration nun - und sei`s für die Korrektheit - notwendig ist oder nicht.

    ich würde sagen, daß es "richtiger" ist, sie anzugeben, wobei Du in XHTML 1.0 noch darauf verzichten kannst.

    ein andermal steht dann aber zu lesen, dass der MS IE damit Probleme...

    nein, nicht damit. Aber er geht in den quirks-mode, weil er den folgenden Doctype nicht mehr interpretiert. Dies kann von Vorteil, aber auch von Nachteil sein.

    Wie soll ich nun verfahren?

    XHTML 1.0 deklarieren und die Verwendung des Prologs davon abhängig machen, ob der IE in den standardkompatiblen Modus gehen soll oder nicht.

    Ich weiß allerdings auch nicht, wie der MS IE die validen Seiten ohne die XML-Deklaration anzeigen würde, da ich keinen auf meinem System habe.

    Validität hat damit nichts zu tun.

    Steckt hinter dem Wechsel von xhtml1.0-strict zu xhtml1.1 mehr als nur eine Namensänderung?

    ja. Und die Frage läßt vermuten, daß Du XHTML 1.0 angeben solltest. ;-)

    freundliche Grüße
    Ingo

    1. Guten Abend Ingo,

      nein, nicht damit. Aber er geht in den quirks-mode, weil er den folgenden Doctype nicht mehr interpretiert. Dies kann von Vorteil, aber auch von Nachteil sein.

      Ich höre nur von Bekannten, dass die Ansicht im MS IE grausam sein soll (gelbe Schrift auf weißen Grund...); dies ist jedoch nach meiner Konzeption nicht so und auch firefox, opera und Konqueror geben es so wieder, wie ich es gedacht habe.

      Ich weiß allerdings auch nicht, wie der MS IE die validen Seiten ohne die XML-Deklaration anzeigen würde, da ich keinen auf meinem System habe.
      Validität hat damit nichts zu tun.

      Ich habe damit nur mitteilen wollen, dass die Seiten an sich nach dem Reglement korrekt sind; ob sie dann ein Browser (welcher auch immer) aufgrund browsereigener Fehler richtig anzeigt, steht auf einem anderen Blatt.

      Mit Gruß
      Dada

      1. Hi,

        Ich höre nur von Bekannten, dass die Ansicht im MS IE grausam sein soll (gelbe Schrift auf weißen Grund...); dies ist jedoch nach meiner Konzeption nicht so und auch firefox, opera und Konqueror geben es so wieder, wie ich es gedacht habe.

        dann hast Du vielleicht einen Bug im IE provoziert.

        Validität hat damit nichts zu tun.
        Ich habe damit nur mitteilen wollen, dass die Seiten an sich nach dem Reglement korrekt sind; ob sie dann ein Browser (welcher auch immer) aufgrund browsereigener Fehler richtig anzeigt, steht auf einem anderen Blatt.

        Auch dann nicht - unpassende Angaben können durchaus valide sein und Anzeigeprobleme mit sich bringen.

        freundliche Grüße
        Ingo

        1. Guten Tag Ingo,

          dann hast Du vielleicht einen Bug im IE provoziert.

          oh je; darf ich fragen wo? Beim MS IE sind mir die Hände gebunden - ich habe keinen. Mit der "Provokation" sind die Seiten unter www.assamir.de zu finden.

          Mit freundlichen Grüßen
          Dada

          1. Hallo,

            dann hast Du vielleicht einen Bug im IE provoziert.

            oh je; darf ich fragen wo?

            Beim halbtransparenten PNP-Bilder. Der IE kann sie nicht Anzeigen.
            http://www.meta-text.net/etc/dada1.gif

            Und im Gegensatz zum:
            ---------------------
            2. Sie verwenden einen Browser, der nicht den internationalen Standards entspricht; der Browser einer großen Firma aus Redmont (USA) gehört zum Beispiel dazu. Keine größeren Probleme dürften Sie jedoch mit den Browsern von firefox und opera haben. Bitte installieren Sie einen standardkonformen Browser. "
            ---------------------

            hat auch Firefox "Probleme", Z.B. der grüne Umriss des Hundes, erscheint beim russisch gut "3cm" rechts, neben dem Hund.

            Du lieferst deine Seiten mit Content-Type: text/html und mit UTF-8 aus, also kannst du gerne auf die XML-Deklaration verzeichten.
            Und ja, das <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" ></meta> ist "notwendig".

            Grüße
            Thomas

            --
            Surftip: kennen Sie schon Pipolino's Clowntheater?
            http://www.clowntheater-pipolino.net/
            1. Guten Abend Thomas,

              Danke für die Rückmeldung und das Bildschirmbild.

              Beim halbtransparenten PNP-Bilder. Der IE kann sie nicht Anzeigen.

              Dummerweise sind meine Schaltflächen zum Teil durchsichtig. Über den Photos liegt aus historischen Gründen der Seitenkonzeption für die Bildvergrößerung ein durchsichtiges Bild; wenn ich den "Test-"Schriftzug herausnehme, ließe sich dies ändern.
              Was ich jetzt nur nicht verstehe: Warum steht der Aktualisierungshinweis oben anstatt rechts unten (top: 98%; right: 0%;), ebenso die beiden w3c-Bildchen?

              hat auch Firefox "Probleme", Z.B. der grüne Umriss des Hundes, erscheint beim russisch gut "3cm" rechts, neben dem Hund.

              Dies liegt an dem Zusatztext "in Arbeit"; ich bin nur zu faul gewesen, da groß herumzudoktern; denn wenn ich die Übersetzungen von meinem Korrektor zurück habe, kommt der Zusatztext weg und der grüne Umriss passt genau so wie beim linken Hund.

              Du lieferst deine Seiten mit Content-Type: text/html und mit UTF-8 aus, also kannst du gerne auf die XML-Deklaration verzeichten.

              ??? Ich habe meine Seiten alle (bis auf die "Problem.html") mit <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" ></meta> auf den Server gelegt; liefert der jetzt etwas anderes aus?

              Mit Gruß
              Dada

              1. Hi,

                Was ich jetzt nur nicht verstehe: Warum steht der Aktualisierungshinweis oben anstatt rechts unten (top: 98%; right: 0%;), ebenso die beiden w3c-Bildchen?

                Wenn Du das unten haben willst, warum richtest Du es dann oben aus?
                bottom existiert.

                cu,
                Andreas

                --
                Warum nennt sich Andreas hier MudGuard?
                Schreinerei Waechter
                Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
                1. Guten Tag Andreas,

                  Wenn Du das unten haben willst, warum richtest Du es dann oben aus?
                  bottom existiert.

                  Gegenfrage: Was ist der Unterschied zwischen top: 98% und bottom: 2%? Ich habe halt die Positionen in diesem Falle von oben ab gemessen verteilt. Und MS IE zeigt es bei top=15% an!?

                  Mit Gruß
                  Dada

                  1. Hi,

                    Gegenfrage: Was ist der Unterschied zwischen top: 98% und bottom: 2%? Ich habe halt die Positionen in diesem Falle von oben ab gemessen verteilt. Und MS IE zeigt es bei top=15% an!?

                    bottom bezieht sich auf die Unterkante, top auf die Oberkante der Box.

                    Denk Dir eine Linie, die die Höhe des Elternelements im Verhältnis 98:2 teilt.
                    Mit top:98% sollte die Box mit ihrer Oberkante an der Linie anliegen, mit bottom:2% mit ihrer Unterkante.

                    Hat das Elternelement überhaupt die Höhe, von der Du meinst, daß es sie haben müßte? Schon mal dem Elternelement eine Hintergrundfarbe verpaßt, um erkennbar zu machen, wie hoch es ist?

                    cu,
                    Andreas

                    --
                    Warum nennt sich Andreas hier MudGuard?
                    Schreinerei Waechter
                    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
                    1. Guten Tag Andreas,

                      mmh, dies ist just das, was ich anderen in Gedanken bei Lesen ihrer Fragen ebenso vorgeworfen habe; vor dem Bildschirm sieht man leider oft die eigenen Fehler nicht - schon gar konzeptionelle.
                      D. h., firefox, opera und konqueror würden meine Seiten - streng nach den Regeln - falsch anzeigen, weil sie die nicht angegebene Breite und Höhe der div-Fläche mit 100 % annehmen (beziehungsweise auf die restliche Bildschirmfläche ausdehnen).
                      D. h., im MS IE müssten in allen anderen Seiten der Präsenz die Texte mehr oder weniger bei 15 % kleben - ich habe normalerweise die Positionen in Prozenten definiert, außer auf der Bilderseite, bei der ich bei den Bilder und deren Texten auf px zurückgegriffen habe.
                      Dann werde ich wohl überall noch die Breiten und Höhen angeben, denn sonst ist ja beispielsweise top: 40% auch nicht definiert.

                      Danke für den Hinweis,

                      mit Gruß
                      Dada

          2. Hi,

            Mit der "Provokation" sind die Seiten unter www.assamir.de zu finden.

            Hier komme ich bei meinen Sicherheitseinstellungen im IE auf eine leere Seite. Willst Du Besucher und/oder Suchmaschinen damit aussperren?

            Aber Du meinst vermutlich http://www.assamir.de/Assamir.xhtml. Diese Seite würde ich ja im Firefox mal analysieren, aber dazu reichen mir 8 Sekunden leider nicht - und ich bin zu faul, die automatische Weiterleitung zu deaktivieren.
            Ein Blick ins CSS zeigt aber direkt das Pseudoelement :before - der IE kennt das noch nicht.

            freundliche Grüße
            Ingo

            1. Guten Abend Ingo,

              Mit der "Provokation" sind die Seiten unter www.assamir.de zu finden.
              Hier komme ich bei meinen Sicherheitseinstellungen im IE auf eine leere Seite. Willst Du Besucher und/oder Suchmaschinen damit aussperren?

              Nein! (Was Besucher anbelangt) Ich habe mangels besseres Wissen die Indexdatei meines Dienstleisters etwas bereinigt und auf meine Seite "umgebogen":
              <?

              if (!isset($HTTP_HOST)) $domain = $_SERVER["HTTP_HOST"]; else $domain = $HTTP_HOST;

              ?>

              <html>

              <head>

              <meta http-equiv="refresh" content="0; URL=Assamir.xhtml"></meta>
              </head>

              <body>

              </body>

              </html>

              Offenbar liegt hier für den IE ein Problem?

              Aber Du meinst vermutlich http://www.assamir.de/Assamir.xhtml. Diese Seite würde ich ja im Firefox mal analysieren, aber dazu reichen mir 8 Sekunden leider nicht - und ich bin zu faul, die automatische Weiterleitung zu deaktivieren.

              Assamir.xhtml ist nur meine Eingangsseite mit der Sprachweiche, wobei der Benutzer die Sprache wählt. Die eigentliche Startseite wäre dann Assamir_de.xhtml. Auf der Eingangseite ist - technisch -nichts, was nicht auch auf den anderen ist.
              Sollte diese Eingangseite vernünftig angezeigt werden, so kann ich die Weiterleitung nach acht Sekunden gerne wieder wegnehmen. Ich habe sie nur eingefügt, weil mir zu Ohren gekommen ist, dass es mit dem MS IE große Probleme gibt.

              Mit freundlichen Grüßen
              Dada

              1. Hi,

                Hier komme ich bei meinen Sicherheitseinstellungen im IE auf eine leere Seite. Willst Du Besucher und/oder Suchmaschinen damit aussperren?

                Nein! (Was Besucher anbelangt)

                dann verzichte auf

                <meta http-equiv="refresh" content="0; URL=Assamir.xhtml"></meta>

                so einen Murks habe bestimmt nicht nur ich deaktiviert.

                Sollte diese Eingangseite vernünftig angezeigt werden, so kann ich die Weiterleitung nach acht Sekunden gerne wieder wegnehmen. Ich habe sie nur eingefügt, weil mir zu Ohren gekommen ist, dass es mit dem MS IE große Probleme gibt.

                die gibt es in der Tat. Und da ich mich das erste Mal schon nicht auf diese Art habe weiterleiten  lassen, bleibe ich natürlich auch hier hängen. Was hast Du bloß gegen normale Links, auf die jeder klicken kann?

                freundliche Grüße
                Ingo

                1. Guten Morgen Ingo,

                  meine Seiten sind die ersten Internetseiten, die ich geschrieben habe (und habe deswegen gleich xhtml anstatt html genommen), und auch die erste Präsenz, die ich auf einen Server gestellt habe. Daher habe ich mich einfach nach einigen Versuchen mangels Wissen an dem Platzhalterseitenkonstrukt meines Dienstleisters entlanggehangelt.
                  Heute habe ich festgestelt, dass der Server zwar keine index.xhtml-Startseite mag, aber diegleiche (!) Seite mit der html-Endung schon. Somit habe ich die Eingangseite Assamir.xhtml in index.html umbenannt und den vorherigen Konstukt hinausgeschmissen. Die Nach-8 s-Weiterleitung auf die Problem.html habe ich ebenso auskommentiert. Wenn ein Browser nun mit der Eingangsseite Probleme hat (schade), bleibt er halt da hängen.
                  Vielen Dank für bisherigen Mühen und für weitere Kritik bin ich immer offen.

                  Mit freundlichen Grüßen
                  Dada

    2. Hallo Ingo,

      ich würde sagen, daß es "richtiger" ist, sie anzugeben, wobei Du in XHTML 1.0 noch darauf verzichten kannst.

      Ob man darauf Verzichten darf oder nicht hängt allein davon ab, welchen Zeichenkodierung man verwendet. Wenn man utf-8 oder utf-16 verwendet, darf man die XML-Deklaration weglassen, sonst nicht. Mit XHTML hat das aber nichts zu tun, das ist in der XML 1.0 Spezifikation geregelt.
      Du hast in so fern recht, als man XHTML 1.0 auch als text/html ausliefern darf und es dann auch nicht zu Problemen führt, wenn man die XML-Deklaration bei anderen Zeichensätzen weglässt.

      Grüße

      Daniel

      1. Hi,

        Ob man darauf Verzichten darf oder nicht hängt allein davon ab, welchen Zeichenkodierung man verwendet. Wenn man utf-8 oder utf-16 verwendet, darf man die XML-Deklaration weglassen, sonst nicht. Mit XHTML hat das aber nichts zu tun, das ist in der XML 1.0 Spezifikation geregelt.

        Falsch.
        Schau doch mal genauer in http://www.w3.org/TR/xhtml1/#normative nach:

        "however XHTML document authors are strongly encouraged to use XML declarations in all their documents."

        • also wie ich es umschrieb: "richtiger". ;-)

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

        • also kann bei ISO-Angabe im HTTP-Header durchaus drauf verzichtet werden.

        freundliche Grüße
        Ingo

        1. Hallo Ingo,

          Schau doch mal genauer in http://www.w3.org/TR/xhtml1/#normative nach:

          Worauf ich raus wollte ist, dass das in zukünftigen XHTML Versionen nicht anders sein wird, weil das eben von XML abhängt. Dass das da in der XHTML-Spezifikation noch mal steht ist eigentlich überflüssig.

          Grüße

          Daniel