fux: Validierung, DocType, standardkonform/Quirks

Beitrag lesen

Hallo Experten,

ausgelöst von Problemen mit dem IE 8, der bei manchen meiner Websiten ab und zu meldet, dass die Webseite nicht richtig funktioniert oder ein Fehler auf der Webseite wäre mit der gewohnt unnützen Info, dass dies in Zeile 0, Spalte 0 wäre, hab ich den Basisaufbau meiner Webseiten einmal genauer angeschaut und versucht mittels W3C-Validierung hilfreiche Infos zu finden.

Ich hab bisher mit Strict-Mode gearbeitet, weil ich meinte, dass ich nur damit den IE zwingen könnte, meinen Code standardkonform zu interpretieren und den Quirksmode zu vermeiden.
Ich meine, mich an Erfahrungen von vor Jahren zu erinnern wo er im transitional/Loose Mode so Dinge wie falsche CSS-Angaben "width:200" ohne "px" tolerant ausgelegt und selbst korrigiert hat - bin mir darüber aber nicht ganz sicher.

Also nun zu den konkreten Fragen, die sich aus dem W3C-Check ergeben:
Bei DocType strict erhalte ich:
Attribute "TARGET" is not a valid attribute. Did you mean "target"
Mein HTML-Code ist: <a ...  target="_blank" ...>
Ich hab ja "target" geschrieben, aber das Problem liegt wohl einfach im Aufbau der DTD.
Wollte hierzu nur wissen, wie ich das target-Element im Strict-Mode anbringen kann.
Der Validator sagt: "... the document type you are using does not support that attribute for this element. This error is often caused by incorrect use of the "Strict" document type with a document that uses frames (e.g. you must use the "Transitional" document type to get the "target" attribute)"
Ich hab hier weder Frames noch embed.

Ich hab nun umgestellt auf transitional/loose, aber zur erfolgreichen Validierung fehlt's noch etwas.

Mein HTML beginnt so:

  
  
<?xml version="1.0" encoding="UTF-8" ?>  
  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  
  "http://www.w3.org/TR/html4/loose.dtd">  
  
<html>  

Leerzeilen (auch 1. Zeile) aufgrund servergeneriertem HTML)

1. wie gebe ich in hrefs cgi-Parameter (&param=abc) valide an?
Beim Check erhalte ich die Fehlermeldung
general entity "param" not defined
Das ist wohl generell ein Problem, dass hier XML validiert werden soll.
Die Lösung ist doch wohl nicht, dass ich "&" durch "&amp;" ersetze?

2. document type does not allow element "DIV" here
Es geht um divs innerhalb eines a-Tags.

Innerhalb a dürfen also nur Inline-Elemente sein.
Rein inhalts-/darstellungsbezogen habe ich im Link Block-Elemente, sprich mehrere Blöcke übereinander, die ich mit CSS unterschiedlich auszeichne.
Muss ich hier also Klimmzüge machen und andere Tags verwenden, die eigentlich nicht so geeignet sind?

Ich will nicht mit aller Gewalt ein valides Dokument erreichen.
Meine Haltung/Idee dazu ist eher, dass ich damit die Wahrscheinlichkeit erhöhe, dass mein Dokument in den gängigsten Browsern richtig angezeigt wird und ich nicht jeden Teil testen muss bzw. weniger Darstellungsprobleme zu erwarten hab.
Ob das auch für den IE gilt?? Leider gibt MS nicht so viel drauf, standardkonform zu arbeiten - dies ändert sich mit IE 8 auch nur bedingt.

Gruß, Robert