Spry zerschießt Validierung

Hallo,

ich würde auf meiner neuen Seite gerne Spry einsetzen, aber sobald ich Spry in die Seite einfüge, tauchen bei der W3C-Validierung massig Fehler im Bezug auf Spry auf.

Kann man das umgehen oder kann man diese Validierungsfehler sogar ignorieren?

MfG

Nunja, entweder du hast nicht verstanden, was dieses 'Spry’
macht oder das ‘Spry’ macht eine Ausgabe, die nicht zu dem
Format paßt, worin du die Ausgabe machst oder das ‘Spry’ macht
einfach Unfug.
Wenn du die URI der Ausgabe angibst, kann man dir das vielleicht
sogar sagen ;o)

Also prinzipiell kann jeder Validierungsfehler ignorieren, viele tun
das sogar, nur ergeben fehlerhafte Dokumente keinen Sinn und
je nach Format werden die in Darstellungsprogrammen jeweils
anders oder sogar gar nicht dargestellt. Wenn einem das egal ist,
kann man natürlich auch das ignorieren, wie so vieles auf der
Welt ;o)

Es liegt am Spry-Attribut. Das wird als “not valid” moniert. (siehe hier)

Hab eine Testseite, die nur das Spry-Element enthält hochgeladen und mal per browsershots.org getestet und in den gängigen Browsern (sogar im IE6) wird es korrekt dargestellt.

Liegt es schlicht daran, dass w3c dieses Spry von Adobe (noch) nicht kennt?

Das ist erstmal eine Namensraumangabe:

xmlns:spry=“http://ns.adobe.com/spry

dann ist sowas wie spry:select ein Attribut im Namensraum spry.

Damit Namenräume überhaupt relevant sind, müßtest du das
Dokument als application/xml oder application/xhtml+xml
senden.

Dann aber gibst du per Doctype an, daß es sich um
XHTML 1.0 Transitional handelt, in der von dir referenzierten
DTD gibt es aber keine Attribute dieser Art, folglich kann der
Validator die auch nicht kennen. Ein XML-parser wird sie zumindest
dem Namensraum spry zuordnen können, wenn er mit dem
Namensraum auch nichts anfangen können muß.

Mein Eindruck: Du hast nicht allzuviel bezüglich Namensräumen
und Elementen und Attributen aus anderen Namensräumen
verstanden, daher ist es vermutlich besser, du läßt die Finger
davon. Weder der Validator noch irgendein browser muß damit
irgendwas Sinnvolles verbinden.

Damit der Validator das akzeptiert, müßtest du oben in der
Dokumenttypdeklaration eine Erweiterung einfügen, die die
genannten Elemente definiert. Ein XML-parser sollte das sogar
auch interpretieren können.

Solange du den Kram allerdings als text/html sendest, ergibt das
alles gar keinen Sinn.

Problem schon gelöst.

Zwecks Validierung packe ich den Code mit rein, um den Doc-Type zu erweitern und nacher lösche ich ihn wieder da:

[quote=“labs.adobe.com”]The trouble is that most browsers get confused by the ENTITY tag and and think the doc type is closed at that point. Therefore, the trailing snippet of code renders in most browsers. While Opera 9 handles it correctly, IE, Firefox and Safari all fail.

This is a browser bug and currently there is no fix for it, despite the code being strictly correct.

So, if you need to ensure validation, add the entity extension. If you then need the page to look correct, remove it when going live.

We will update this page as needed if this changes.[/quote]

Ergänzung:
Durch eine kleine Veränderung des Hintergrundbildes ist der Bug(s.o.), dass im Browser dieses “%SPRY; ]>” angezeigt wird auch gut kaschiert und die Seite wird korrekt validiert.

Das scheint mir nicht einmal der Ansatz zu einer Lösung zu sein,
das ist einfach nur mal wieder ein unausgegorener Blödsinn von
adobe, die einmal mehr zeigen, daß sie es ausgezeichnet
verstehen, Leute zu desinformieren ;o)

Solange du den Kram als text/html schickst, werden da wohl
einige browser Probleme haben, denn die Entwickler haben es
noch nie so weit gebracht, daß auch nur einer davon hätte
HTML4 als SGML parsen können, geschweige denn gemäß einer
DTD ;o)
Deswegen hat man die bei ‘HTML5’ auch gleich weggelassen ;o)

Wenn du den Kram drinläßt, solltest du auch gleich die Angaben
zur DTD weglassen, die sind dann ja sowieso mehr oder weniger
falsch…

Naja, in IE, Firefox, Opera und Safari wird es korrekt angezeigt und W3C erkennt den Code als valid. Das reicht mir für den Anfang.

Immerhin hat labs.adobe.com eine funktionierende Lösung und ich habe im Moment weder die Zeit noch die Muße eine andere Lösung auszutüfteln.

Wenn der ein oder andere Exoten-Browser damit evtl. ein Problem hat, kann ich damit leben, solange es in den verbreitetsten funktioniert.