• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Validator-Meldungen zu 'ner Strict-Seite

daWonderer

New member
Hallo,

ich versuche gerade meinen Code valide zu gestalten.

Folgende Meldung verstehe ich nicht:

Line 58 column 51: cannot generate system identifier for general entity "site".

<a class="menulink" href="index.cl.php?task=inc&site=firmenindex">

Line 58 column 51: general entity "site" not defined and no default entity.

<a class="menulink" href="index.cl.php?task=inc&site=firmenindex">

Line 58 column 55: reference to entity "site" for which no system identifier could be generated.

<a class="menulink" href="index.cl.php?task=inc&site=firmenindex">

Line 58 column 50: entity was defined here.

<a class="menulink" href="index.cl.php?task=inc&site=firmenindex">

Von diesen Meldungen kommen massig, da ich meine Links so gestaltet habe.
Wie kann ich diese Links für Strict valide machen?

2. Problem:

Line 426 column 91: end tag for "SCRIPT" omitted, but its declaration does not permit this.

...='ImgTop1' src='./img/clear.gif'></td>");

Line 423 column 6: start tag was here.

<script type='text/javascript'>

Zeile 423 und folgende sehen so aus:

Code:
<div>
      <script type='text/javascript'>
      <!--
        document.write("<table id='Topic1' class='active' cellpadding='0' onmouseover='if(this.className != \"active\") switchActiveTopic(\"Topic1\");'><tr>");
        document.write("<td class='topImgCell'><img id='ImgTop1' src='./img/clear.gif'></td>");
        document.write("<td id='TopicCell1' class='topCells'>Thema 1</td></tr></table></div>");
      // -->
      </script>      
      <noscript>
       <table id='Topic1' class='active' cellpadding='0'><tr>
        <td class='topImgCell'><img id='ImgTop1' class='big' src='./themen/img/<? echo $topImg1; ?>'></td>
         <td id='TopicCell1' class='topCells'><? echo $topTitle1; ?>  
          <?
           if($topType1 == 0) echo "<a href='index.cl.php?task=topic&site=$topSite1;'>mehr...</a></td>";
            else echo "<a href='$topSite1;' target='_blank'>mehr...</a></td>";
          ?>
        </tr>
       </table>
       </div>
      </noscript>

Laut Validator wird das Ende des Script-Teils innerhalb der document.write() - Anweisungen erwartet. Verstehe ich ehrlich gesagt überhaupt nicht!

Kann sich das einer von euch mal bitte anschauen und sehen wo der Fehler liegt? Danke!

Ähnliches habe ich weiter unten noch mit nem DIV, aber so weit bin ich jetzt noch nicht. Evtl. bekomme ich das mit dem DIV selbst weg.

greetz, Ralf...

zum 2. Problem die Erläuterung: Der Fehler lag in dem NICHT-Maskieren von '/' innerhalb von JS-Strings. Bei document.write() müssen die Slashes maskiert werden also z.b. "<\/td>" für den schließenden Zellen-Tag.

Die 1. Meldung verstehe ich aber immer noch nicht!
 
Zuletzt bearbeitet:
Also einmal musst du & in den Links zu & machen und nach den Regeln ist in den Skriptblöcken nach </ Schluss, d.h. du musst diese maskieren <\/
sollte helfen.
 
:eek: Vielen Dank!

Bin nun von knapp 200 Meldungen auf 11 gekommen. Hatte schon erst Angst ich bekomme die Fehler nie gefixt!
Ein paar sind von einem "iframe" den es ja nicht gibt im Strict-Mode.

Dann noch das hier:

Line 536 column 118: document type does not allow element "A" here;
&
Line 538 column 10: end tag for "NOSCRIPT" which is not finished.

In diesen Zeilen habe ich einen NoScript-Bereich, in dem ein Bild ist, umschlossen von <a ...>, also als Link.

Code:
<noscript>
<a href="http://partners.webmasterplan.com/click.asp?ref=<snip>">
<img src="http://banners.webmasterplan.com/view.asp?ref=<snip>" alt="eBay Partnerprogramm" width="75" height="75" style='border-width:0px;'></a>
</noscript>

Wieso ist das so nicht erlaubt in diesem Bereich?
 
Offtopicfrage:
Wieso machst Du Dir eigentlich die Mühe die Fehler in Deinem Strict-Dokument wegzubekommen um dann doch ein IFrame zu benutzen?
Nimm doch besser gleich Transitional...
 
Weil ich den DOCTYPE schon gesetzt hatte und vom iframe nix wusste (habe eine Seite umgebaut und viel mit Copy&Paste gearbeitet)
Das iframe ist nur von einem Amazon-Partner-Programm, da schau ich mal, ob es da etwas anderes gibt. Also einen Banner oder so.
Theoretisch könnte ich ja einfach mal nen anderen DOCTYPE angeben und sehen ob die Darstellung dann noch hinhaut...

Moment...

Edit: Die Darstellung mit Transitional ist die selbe und das Skript funktioniert scheinbar auch. Da kann ich ja auch den iframe drin lassen.

Jetzt bin ich mal gespannt, ob bei diesem DOCTYPE Fehler drin sind...

Edit2:JUHUUU!!

This Page Is Valid HTML 4.01 Transitional!
 
Zuletzt bearbeitet:
Zurück
Oben