suit: Längenbeschränkung für Attributwerte, speziell für id und name

Kurze Frage:

gibt es in HTML 4.01 bzw. in XHTML 1.0 eine Längenbeschränkung für Attributwerte, speziell eben für id- oder name-Attribute?

Sprich browserseitig (ignorieren ab einer bestimmten Länge) oder limitiert durch SGML bzw. XML?

Ist eine Interessensfrage, da mir hierzu nichts bekannt wäre.

  1. Hi there,

    gibt es in HTML 4.01 bzw. in XHTML 1.0 eine Längenbeschränkung für Attributwerte, speziell eben für id- oder name-Attribute?

    In der Sache - keine Ahnung aber, OMG, was hast Du denn vor? Welche Inhalte willst Du denn darin verstecken? Oder interessiert es dich einfach prinzipiell, ob man den Inhalt des New Yorker Telefonbuchs (indem blanks selbstverständlich durch underscores ersetzt werden) als ID verwenden kann?;)

    1. Oder interessiert es dich einfach prinzipiell, ob man den Inhalt des New Yorker Telefonbuchs (indem blanks selbstverständlich durch underscores ersetzt werden) als ID verwenden kann?;)

      Nein, ich habe grade ein "Dingens" programmiert, bei dem man die ID und die Name-Attribute von bestimmten Elementen manuell eingeben kann (ansonsten werden die nötigen Elemente automatisch generiert).

      Da die IDs der manuell einzugebenden irgendwo gespeichert werden müssen habe ich kurz mit dem Gedanken gespielt, das nötige Datenbankfeld zu beschränken und hab' mich gefragt, obs überhaupt ein Limit gibt.

      Naja, jetzt ist es ein tinytext-Feld - wer längere IDs verwendet, hat halt pech gehabt :)

      Aber es könnte ja durchaus sein, dass es Hardlimits gibt - z.B. "Eine ID darf im Internet Explorer 6 maximal 1024 Zeichen lang sein" oder sonstige Späße :D

      1. Hi there,

        Aber es könnte ja durchaus sein, dass es Hardlimits gibt - z.B. "Eine ID darf im Internet Explorer 6 maximal 1024 Zeichen lang sein" oder sonstige Späße :D

        Also wenn es die gibt sind sie wahrscheinlich wirklich irgendwo in der Nähe des New Yorker Telefonbuchs. Ich hab gerade ein div-Element mit einer ID erzeugt, die fast 800.000 Zeichen lang ist, und kein Browser hat dabei gemuckt, auch nicht, als ich diese ID in einem Javascript-Alert ausgegebn habe (ist halt nicht alles mitgekommen, aber erkannt wurde es und Bezug nehmen d'rauf war auch möglich...;)

        1. Hi,

          Ich hab gerade ein div-Element mit einer ID erzeugt, die fast 800.000 Zeichen lang ist, und kein Browser hat dabei gemuckt, auch nicht, als ich diese ID in einem Javascript-Alert ausgegebn habe (ist halt nicht alles mitgekommen, aber erkannt wurde es und Bezug nehmen d'rauf war auch möglich...;)

          Ich nehme an, erkannt werden bedeutet hier, dass auch der Zugriff auf das Element per document.getElementById(ultraLangeID) geklappt hat?

          Da lauern bestimmt noch Fallen wie bspw. dass bei zwei solchen IDs, die sich nur im letzten Zeichen unterscheiden, der Browser dir mit getElementById das erste statt des gesuchten zweiten Elements zurückgibt, weil er nur die ersten x Zeichen wirklich vergleicht, oder ähnliches ...

          Ich würd's in der Praxis nicht drauf ankommen lassen, und systemseitig auf eine "vernünftige" Länge beschränken.

          MfG ChrisB

          --
          “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
          1. Hi there,

            Ich nehme an, erkannt werden bedeutet hier, dass auch der Zugriff auf das Element per document.getElementById(ultraLangeID) geklappt hat?

            ja.

            Da lauern bestimmt noch Fallen wie bspw. dass bei zwei solchen IDs, die sich nur im letzten Zeichen unterscheiden, der Browser dir mit getElementById das erste statt des gesuchten zweiten Elements zurückgibt, weil er nur die ersten x Zeichen wirklich vergleicht, oder ähnliches ...

            jetzt hast Du es herausgefordert, ich werd meine Testumgebung noch einmal herannehmen müssen;)

            Ich würd's in der Praxis nicht drauf ankommen lassen, und systemseitig auf eine "vernünftige" Länge beschränken.

            ja eh, weil's nichts bringt, oder, was kann man (als ID) mit 800.000 Zeichen sagen, was man mit 18 nicht sagen kann? Trotzdem ist es nicht ganz uninteressant, auch wenn es "etwas" praxisfern ist...