jeannie61: Fix the errors within the HTML language definition.

Gguten Morgen, könnte man mir sagen wie ich es schaffe DE und EN Sprachen in die Meta Tags unterzubringen damit es klar ist, dass zwei Sprachen benutzt werden? Vielen Dank in Voraus, Jeannie

Folgende Nachrichten verweisen auf diesen Beitrag:

  1. hallo

    könnte man mir sagen wie ich es schaffe DE und EN Sprachen in die Meta Tags unterzubringen damit es klar ist, dass zwei Sprachen benutzt werden?

    Du kannst angeben, für welche Sprechergruppen der Inhalt interessant ist.

    Also wenn der Inhalt Übersetzungen zwischen de und en anbietet:

    <meta http-equiv="content-language" content="de, en">

    -- https://beat-stoecklin.ch/pub/index.html
    1. Vielen Dank, so hatte ich es früher gehabt und dachte das gehe nicht mehr.

      1. hallo

        Vielen Dank, so hatte ich es früher gehabt und dachte das gehe nicht mehr.

        Ich werde wohl meine Antwort revidieren müssen

        https://www.w3.org/International/questions/qa-http-and-lang.en#quickanswer

        Kurz: als http Header OK. als meta Element nicht OK.

        Der Nutzen der Angabe ist praktisch nicht vorhanden.

        -- https://beat-stoecklin.ch/pub/index.html
        1. @@beatovich

          https://www.w3.org/International/questions/qa-http-and-lang.en#quickanswer

          Warum verlinkst du die englische Version, obwohl eine deutsche Übersetzung verfügbar ist? (Huch, die ist ja gar nicht von mir!)

          Möglich, dass Jeannie lieber englisch liest. Dann sollte ihr Browser das so sagen. Deshalb am besten den generischen URL verlinken: https://www.w3.org/International/questions/qa-http-and-langlanguage negotiation at its best.

          LLAP 🖖

          -- „Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann
          1. Hej Gunnar,

            https://www.w3.org/International/questions/qa-http-and-lang.en#quickanswer

            Warum verlinkst du die englische Version, obwohl eine deutsche Übersetzung verfügbar ist? (Huch, die ist ja gar nicht von mir!)

            Sind ja auch so genug. Fleißig!

            Marc

          2. hallo

            @@beatovich

            https://www.w3.org/International/questions/qa-http-and-lang.en#quickanswer

            Warum verlinkst du die englische Version, obwohl eine [deutsche Übersetzung]

            Ich verlinke, was ich gelesen habe.

            -- https://beat-stoecklin.ch/pub/index.html
    2. @@beatovich

      Du kannst angeben, für welche Sprechergruppen der Inhalt interessant ist.

      Also wenn der Inhalt Übersetzungen zwischen de und en anbietet:

      <meta http-equiv="content-language" content="de, en">

      Ja, das ist eine Meta-Angabe zur Sprache Zielpublikums.

      Diese ersetzt aber nicht die Angabe der Sprache des Inhalts der Seite, eines Bereichs bzw. eines Textabschnitts mittels lang-Attribut.

      Angabe der Sprache in HTML

      LLAP 🖖

      -- „Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann
      1. Das Problem ist das meine Sprache Deutsch Englisch ist, da es eine Lernwebseite ist -englisch lernen für deutsche Kindern

        1. @@jeannie61

          Das Problem ist das meine Sprache Deutsch Englisch ist, da es eine Lernwebseite ist -englisch lernen für deutsche Kindern

          Die Primärsprache ist bei dir deutsch, also <html lang="de"> angeben.

          Und Sprachwechsel innerhalb der Seite, bspw.:

          <li> <a href="…"><span lang="en">Active tenses</span> - ALLE Zeiten <strong>einzeln</strong></a> - <span lang="en">simple present, present progressive (continuous), present perfect, simple past, past progressive (continuous), will future, going to future, past perfect</span> </li>

          Hinweise:

          • strong (oder em) ist hier angebracht, nicht b. Auf u solltest du verzichten.
          • ALLE solltest du im Quelltext nicht großschreiben, sondern alle. Wenn due das in Großbuchstaben darstellen willst (warum eigentlich?) dann mit CSS: text-transform: uppercase.

          LLAP 🖖

          -- „Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann
          1. Die Primärsprache ist bei dir deutsch, also <html lang="de"> angeben.

            Und Sprachwechsel innerhalb der Seite, bspw.: <li> <a href="…"><span lang="en">Active tenses</span> - ALLE Zeiten <strong>einzeln</strong></a> - <span lang="en">simple present, present progressive (continuous), present perfect, simple past, past progressive (continuous), will future, going to future, past perfect</span> </li>

            @LLP Also soweit ich verstanden habe, sollte ichh links die auf Englisch erscheinen so markieren? Dann mache ich dann 😀

            Das hier habe ich nicht ganz verstanden 😉verstanden

            strong (oder em) ist hier angebracht, nicht b. Auf u solltest du verzichten.

            Vielen Dank, Jeannie

            1. Hallo,

              @LLP

              Gunnar heißt eigentlich LLAP, „Live Long And Prosper“, basierend auf einer antiken Weltraumsaga…

              Gruß
              Kalk

              1. Oh sorry 😟 @LLAP

                Ich habe auch verstanden was du gemeint hast mit u und b und ALLE, die werde ich alle rausnehmen 😉Vielen Dank

              2. Hallo @Tabellenkalk,

                Gunnar heißt eigentlich LLAP

                Witzbold. Würdest Du mich basierend auf diesem Posting hier mit @MGUDFDF referenzieren?

                🐭 MGUDFDF  🐬 

                -- sumpsi - posui - clusi
                1. Hallo,

                  Witzbold.

                  Danke.

                  Würdest Du mich basierend auf diesem Posting hier mit @MGUDFDF referenzieren?

                  Wenn du drauf bestehst…

                  Gruß
                  Kalk

                  1. Hej Tabellenkalk,

                    Witzbold.

                    Danke.

                    Würdest Du mich basierend auf diesem Posting hier mit @MGUDFDF referenzieren?

                    Wenn du drauf bestehst…

                    Sehr witzig. Im Ernst!

                    YMMD

                    Marc

                    1. Hallo,

                      YMMD

                      In der Annahme, dass du meinen Beitrag deshalb auch bepunktet hast:
                      Du bist jetzt verantwortlich dafür, dass ich "Zugriff auf die Moderationstools" habe!

                      händereib chrrchrrchrr

                      Gruß
                      Kalk

                      1. Hej Tabellenkalk,

                        YMMD

                        In der Annahme, dass du meinen Beitrag deshalb auch bepunktet hast:
                        Du bist jetzt verantwortlich dafür, dass ich "Zugriff auf die Moderationstools" habe!

                        Das hast du mit deinem hochwertigen Beitrag auch mehr als verdient. 😂

                        Vergiss aver bitte niemals bei Ausübung deiner Moderatoren-Rechte, wem du die verdankst! 😉

                        Mit großer Macht kommt große Verantwortung. 😀

                        händereib chrrchrrchrr

                        Spuck noch in die Hände. Das bringt mehr als nur reiben!!1!11!!!

                        Marc

          2. Hej Gunnar,

            <li> <a href="…"><span lang="en">Active tenses</span> - ALLE Zeiten <strong>einzeln</strong></a> - <span lang="en">simple present, present progressive (continuous), present perfect, simple past, past progressive (continuous), will future, going to future, past perfect</span> </li>

            Hinweise:

            • strong (oder em) ist hier angebracht, nicht b

            Na ja, nur anhand des hier gezeigten Ausschnittes würde ich vermuten, dass es an Stelle von span schon angebracht wäre. Ggfs. aber auch i

            Marc

          3. @LLAP

            Hallo, Wenn in meine header es so steht:

            <meta http-equiv="content-language" content="de,">

            Wo musste ich dann das "lang" hintun - es tut mir leid wegen der doofe Frage 😉

            1. Hallo jeannie61,

              das musst und sollst Du mit http-equiv gar nicht tun, wenn man der HTML Spezifikation folgt.

              Gib die Sprache über das lang-Attribut an. Die Spec empfieht: lang-Attribut am <body> Element. @Gunnar Bittersmann hat bisher immer empfohlen: lang-Attribut am <html> Element.

              Da <html> Eltern-Element des <body> ist, wird Gunnars Empfehlung die Spec-Empfehlung mit einschließen. Vorteil von <html lang="..."> dürfte sein, dass sich das auch auf das <title> Element im <head> vererben dürfte.

              Rolf

              -- sumpsi - posui - clusi

              Folgende Nachrichten verweisen auf diesen Beitrag:

              1. @@Rolf B

                Die Spec empfieht: lang-Attribut am <body> Element.

                Welche? An welcher Stelle?

                Vorteil von <html lang="..."> dürfte sein, dass sich das auch auf das <title> Element im <head> vererben dürfte.

                Ja. Und ggfs. andere Dinge im head, z.B. Metadaten.

                LLAP 🖖

                -- „Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann
            2. hallo

              @LLAP

              Hallo, Wenn in meine header es so steht:

              <meta http-equiv="content-language" content="de,">

              Wo musste ich dann das "lang" hintun - es tut mir leid wegen der doofe Frage 😉

              Erstens sollst du das nicht nutzen.

              Falls überhaupt, so soll man das als HTTP-Header ausgeben, also nicht im Dokument angeben.

              -- https://beat-stoecklin.ch/pub/index.html
              1. Hallo beatovich,

                das lang-Attribut und der content-language Header haben unterschiedliche Semantik! Vergleiche RfC 7231 und HTML 5.2 Spec (habe ich gerade hinter mir 😀 ).

                Rolf

                -- sumpsi - posui - clusi
                1. hallo

                  Hallo beatovich,

                  das lang-Attribut und der content-language Header haben unterschiedliche Semantik! Vergleiche RfC 7231 und HTML 5.2 Spec (habe ich gerade hinter mir 😀 ).

                  The "Content-Language" header field describes the natural language(s)

                  of the intended audience for the representation. Note that this might not be equivalent to all the languages used within the representation.

                  Wie ich es im Sinn habe. Und das ist ja auch das Thema, die Sprechergruppe anzugeben.

                  -- https://beat-stoecklin.ch/pub/index.html
      2. Hallo Gunnar,

        was soll das eigentlich mit dem Komma im http-equiv content-language? In der Spec steht zur Interpretation des Wertes:

        If the element’s content attribute contains a U+002C COMMA character (,) then abort these steps.

        D.h. eine kommaseparierte Liste wäre wirkungslos. Die primäre Sprache des Dokuments ist dann „undefiniert“. Ein Space wäre als Token-Trenner okay, aber die Spec sagt auch, dass nur das erste Token beachtet wird. Das steht eindeutig als Note da:

        This pragma is not the same as the HTTP Content-Language header of the same name. HTTP Content-Language values with more than one language tag will be rejected as invalid by this pragma

        Mehrere Sprachangaben im HTTP Header content-language sind erlaubt. Das Dokument richtet sich dann an Sprecher mehrerer Sprachen. Welche Sprache aber konkret in einem Dokumentabschnitt verwendet wurde, muss eindeutig über lang-Attribute gekennzeichnet sein. Die http-equiv Angabe (bzw. das lang-Attribut an <html> oder <body>) bezeichnet die primäre Sprache des Dokuments und muss ebenfalls eindeutig sein.

        Rolf

        -- sumpsi - posui - clusi
        1. @@Rolf B

          was soll das eigentlich mit dem Komma im http-equiv content-language? In der Spec

          Die Stelle beschreibt wohl die Ermittlung der Sprache aus der Meta-content-language-Angabe (als Fallback, falls die Sprache nicht per lang-Attribut angeben ist).

          steht zur Interpretation des Wertes:

          If the element’s content attribute contains a U+002C COMMA character (,) then abort these steps.

          Genau. Die Sprache darf nur dann aus der Meta-content-language-Angabe ermittelt werden, wenn dort nur eine Sprachangabe drinsteht. Eben:

          This pragma is not the same as the HTTP Content-Language header of the same name. HTTP Content-Language values with more than one language tag will be rejected as invalid by this pragma

          Hingegen:

          Mehrere Sprachangaben im HTTP Header content-language sind erlaubt.

          zur Angabe der Sprachen des Zielpublikums, ja.

          LLAP 🖖

          -- „Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann
          1. und wie soll ich das nu machen? Nicht als Meta Tag?

            1. Hallo jeannie61,

              das hier hast Du gesehen?

              Die Primärsprache des Dokuments setzt man mit <html lang="...">, sprachspezifische Abschnitte mit lang-Attribut an diesen Abschnitten. Ist das Dokument mehrsprachig, so dass keine Primärsprache formuliert werden kann, lässt du die weg - aber dann muss jeder Inhalt mit lang-Attributen markiert sein.

              Im HTTP-Header (das ist nicht das http-equiv Dings) kannst Du die Sprachen auflisten, an deren Sprecher sich das Dokument richtet.

              Du hast gesagt: Englisch lernen für deutsche Kinder. Adressaten deiner Seite sind also eigentlich deutschsprachige Menschen. Demnach schickst Du im HTTP-Header de als Sprache. Wenn deine Seiten einen deutschen Rahmentext haben mit deutsch-englischen Übungen dazwischen, gib ihr <html lang="de"> und markiere die englischen Teile mit lang="en". Hast Du Seiten, deren Rahmen englisch ist und nur deutsche Brocken in den Lektionen, mach es umgekehrt.

              Rolf

              -- sumpsi - posui - clusi