Kontur: js einfügen -> not valid html ??

Guten Tag.

Ich habe eine Seite an der ich arbeite bei w3c validieren lassen.
Zu meinem Erstaunen musste ich feststellen, dass die Seite immer dann, wenn ich einen scriptbereich definiere plötzlich nicht mehr als 'Valid HTML 4.01 Transitional' durchgeht.

Hier ein Ausschnitt meines Htmls:

"...
-->
</STYLE>
</HEAD>
<SCRIPT TYPE="text/javascript">
<!--

//-->
</SCRIPT>
<NOSCRIPT></NOSCRIPT>
<BODY>
<TABLE CELLSPACING="0" CELLPADDING="0" BORDER="0">
..."

Ist der Script-Breich falsch einfügt, oder warum handelt es sich dadruch plötzlich nichtmehr um Valid HTML 4.01 Transitional?

Hier noch die Meldung des Validators:

"document type does not allow element "BODY" here
<BODY>
The element named above was found in a context where it is not allowed. This could mean that you have incorrectly nested elements -- such as a "style" element in the "body" section instead of inside "head" -- or two elements that overlap (which is not allowed).

One common cause for this error is the use of XHTML syntax in HTML documents. Due to HTML's rules of implicitly closed elements, this error can create cascading effects. For instance, using XHTML's "self-closing" tags for "meta" and "link" in the "head" section of a HTML document may cause the parser to infer the end of the "head" section and the beginning of the "body" section (where "link" and "meta" are not allowed; hence the reported error)."

Vielen Dank im Vorraus,
mfg,
Johannes Neumeier

  1. Hi,
    Du wirst die Ursache vermutlich *in* dem Script finden. Deklariese es als CDATA oder - noch besser - lagere es aus.

    freundliche Grüße
    Ingo

    1. hallo Ingo,

      Du wirst die Ursache vermutlich *in* dem Script finden. Deklariese es als CDATA oder - noch besser - lagere es aus.

      Da muß ich widersprechen. Schau dir mal an, wo es bisher steht: zwischen </head> und <body>, und genau das sagt die zitierte Validatormeldung auch aus. Auslagern ist natürlich eine gute Idee, aber es reicht schon, es einfach in den Header zu stecken oder in den body, also jedenfalls an eine Stelle, wo es hingehören könnte.

      Grüße aus Berlin

      Christoph S.

      1. Hi,

        Du wirst die Ursache vermutlich *in* dem Script finden. Deklariese es als CDATA oder - noch besser - lagere es aus.

        Da muß ich widersprechen.

        Und ich Dir ;-)
        Natürlich wirft dieser Fehler auch diese Meldungen aus, alledings zunächst diese:

        document type does not allow element "script" here; assuming missing "body" start-tag

        und ich glaube nicht, daß die Frage in diesem Fall hier gestellt worden wäre.

        freundliche Grüße
        Ingo

        1. Hallo!

          Da muß ich widersprechen.
          Und ich Dir ;-)

          und Ich dir erst Recht... ;-)

          Es geht hier nicht um XHTML:
          http://de.selfhtml.org/html/xhtml/unterschiede.htm#script_style

          Grüße
          Andreas

          --
          SELFHTML Linkverzeichnis: http://aktuell.de.selfhtml.org/links/
          1. Hi,

            Es geht hier nicht um XHTML:

            stimmt. An den Unterschied hatte ich jetzt gedacht.

            freundliche Grüße
            Ingo

    2. Hi,
      Du wirst die Ursache vermutlich *in* dem Script finden. Deklariese es als CDATA oder - noch besser - lagere es aus.

      freundliche Grüße
      Ingo

      Vielen Dank für den Tip,

      da ich meinen Js-Künsten selbst nicht so 100%ig über den Weg traue hatte ich versucht das als Fehlerquelle auszuschließen. Ich hatte also das Js selbst entfernt, die Js-Definition allerdings belassen um zu sehen ob das Problem von jener ausgeht; was auch der Fall ist. D.h. es liegt nicht am Js, da der Validator die Meldung dann auch ausspuckt, wenn im Dokument zwar ein Js-Bereich definiert ist aber jener leer ist.

      mfg,
      Johannes Neumeier

  2. Hallo Kontur,

    du solltest die englische Version deiner Seite von einem englisch-sprachigen Menschen überarbeiten lassen. Den offensichtlichsten Fehler kann ich dir gleich selber nennen: es heisst nicht "online portfolio of johannes neumeier", sondern "johannes neumeier's online portfolio".

    Gruss,
    Daniel

    1. Vielen Dank für den Hinweis.
      Die Seite wird in Kürze grundlegend erneuert, einhergehend wird es neuen Text geben.