target bei XHTML ersetzen?
Kühn, M
- html
0 Jan L.0 Christopher0 Auge
Hallöle,
da ja bei XHTML 1.1 'target' im 'a' - Tag nicht mehr erlaub ist, wollte ich fragen, ob man diesen ersetzen kann und somit ein Zielfenster für die Links bestimmen kann.
Danke.
Hallo,
da ja bei XHTML 1.1 'target' im 'a' - Tag nicht mehr erlaub ist, wollte ich fragen, ob man diesen ersetzen kann und somit ein Zielfenster für die Links bestimmen kann.
Nein. 'target' ist in XHTML schon absichtlich nicht mehr vorhanden, weil es
dem User überlassen werden soll, wo er die Links öffnet. Du kannst natürlich
JS benutzen, aber das wäre ja nun wirklich Schwachsinn.
Benutze entweder einen doctype, der 'target' erlaubt oder verzichte darauf.
Bist du dir übrigens sicher, daß du XHTML1.1, das du richtigerweise als
'application/xhtml+xml' statt 'text/html' ausliefern müßtest, verwenden
willst? Damit haben nämlich viele Browser Probleme. XHTML1.0 strict wäre wohl
angebrachter.
Gruß, Jan
Bist du dir übrigens sicher, daß du XHTML1.1, das du richtigerweise als
'application/xhtml+xml' statt 'text/html' ausliefern müßtest, verwenden
willst? Damit haben nämlich viele Browser Probleme. XHTML1.0 strict wäre wohl
angebrachter.
öhm... is das so vorgeschrieben? Weil Validator meckert ja nicht?!
Ich dacht das is fast das gleiche, sry, fange gerade erst an ;).
Kühn,
XHTML1.1, das du richtigerweise als 'application/xhtml+xml' statt 'text/html' ausliefern müßtest,
öhm... is das so vorgeschrieben?
Nein, ist es nicht.
XHTML1.0 strict wäre wohl angebrachter.
gilt dennoch, wenn du nicht um die Einschränkungen weißt und nicht Elemente verwenden willst, die erst in 1.1 eingeführt wurden. Zu den Problemen, die 1.1 macht, ist im Archiv einiges zu finden, Hinzunahme von "author:molily" sollte die Suchergebnisse auf gute Treffer beschränken.
Wo wir gerade bei Suche sind: In der Forumhauptdatei nach "target" gesucht hätte dich auf den Thread https://forum.selfhtml.org/?t=106760&m=662078 gebracht.
Gunnar
Hi,
XHTML1.1, das du richtigerweise als 'application/xhtml+xml' statt 'text/html' ausliefern müßtest,
öhm... is das so vorgeschrieben?Nein, ist es nicht.
Sagen wir mal, es ist so gut wie vorgeschrieben. ;-)
Nach http://www.w3.org/TR/xhtml-media-types/#summary 'SHOULD' application/xhtml+xml verwendet werden - während es für XHTML 1.0 (HTML compatible) nur 'MAY' heißt.
Und nach RFC2119 müssen bei SHOULD schon triftige Gründe im Einzelfall dagegen sprechen, von dieser Empfehlung abzuweichen. Wenn ein Dokument nun genauso gut als XHTML 1.0 Strict deklariert (und als text/html ausgeliefert) werden kann, sehe ich absolut keinen Grund von dieser Empfehlung abzuweichen.
freundliche Grüße
Ingo
Hi Ingo,
Sagen wir mal, es ist so gut wie vorgeschrieben. ;-)
„So gut wie“ heißt „nicht“. ;-) So wie „Bitte hier nicht rauchen“ und niemand hält sich dran.
Und nach RFC2119 müssen bei SHOULD schon triftige Gründe im Einzelfall dagegen sprechen, von dieser Empfehlung abzuweichen.
Sag ich doch:
wenn du […] nicht Elemente verwenden willst, die erst in 1.1 eingeführt wurden.
Wenn man keine Ruby-Annotation verwendet, seh ich auch keinen Grund, XHTML 1.1 einzusetzen.
Gunnar
Hi,
Wenn man keine Ruby-Annotation verwendet, seh ich auch keinen Grund, XHTML 1.1 einzusetzen.
genau. Und wenn Du das verwendest, kannst Du das auch gleich als application/xhtml+xml ausliefern, oder?
Und als Wunschdenken würde ich das nicht bezeichnen. Das W3C hat doch extra für XHTML 1.0 noch text/html zugelassen. Irgendwann wird auch die Zeit für XHTML 1.1 kommen - wenn die Browser dieses vollständig unterstützen; vorher macht das mMn wenig Sinn.
freundliche Grüße
Ingo
Hi Ingo,
Irgendwann wird auch die Zeit für XHTML 1.1 kommen - wenn die Browser dieses vollständig unterstützen;
Hm, wenn die Browser sowieso neu geschrieben werden, damit sie XML-fähig sind, dann könnten sie doch auch gleich XHTML 2.0 verstehen.
Gunnar
Hi,
Hm, wenn die Browser sowieso neu geschrieben werden, damit sie XML-fähig sind, dann könnten sie doch auch gleich XHTML 2.0 verstehen.
wenn "die Browser" XHTML 2.0 und CSS 3 umsetzen, wird "der Browser" vermutlich gerade mal bis zur noch nicht ganz vollständigen Unterstützung von XHTML 1.1 und CSS 2.1 gekommen sein. ;-)
freundliche Grüße
Ingo
Ingo,
Nach http://www.w3.org/TR/xhtml-media-types/#summary 'SHOULD' application/xhtml+xml verwendet werden
IMHO ist das Wunschdenken des W3C und geht an den Fähigkeiten heute verwendeter Browser vorbei.
Gunnar
Hallo,
da ja bei XHTML 1.1 'target' im 'a' - Tag nicht mehr erlaub ist, wollte ich fragen, ob man diesen ersetzen kann und somit ein Zielfenster für die Links bestimmen kann.
Nein. 'target' ist in XHTML schon absichtlich nicht mehr vorhanden,
Das ist so ein widersinniger Satz.
»nicht mehr«: Das target-Attribut ist in XHTML genauso vorhanden, wie es in HTML vorhanden war, nämlich in den Transitional-Varianten. Nichts hat sich geändert oder zugespitzt. Das target-Attribut ist weiterhin vorhanden, auch noch in XHTML Modularization. Es ist in XHTML 1.1 nicht vorhanden, weil dies eben nur Strict-Markup gemäß HTML 4 enthält.
»absichtlich«: Fakt ist, dass target die Präsentation beeinflusst und daher seit HTML 4 den Deprecated-Status hat. Das Fehlen von Transitional-Markup in XHTML 1.1 erklärt sich erst einmal dadurch, dass XHTML 1.1 eine möglichst kompatible und interoperable Minimalanwendung von XHTML Modularization sein will. Dieser kausale Zusammenhang ist spekulative Interpretation, aber kein historischer Fakt:
weil es dem User überlassen werden soll, wo er die Links öffnet.
Mathias
Hallo,
hier steht was interessantes zum Thema: http://www.webwriting-magazin.de/inter/webdokument.php.
Gruß
Christopher
Hallo
da ja bei XHTML 1.1 'target' im 'a' - Tag nicht mehr erlaub ist, wollte ich fragen, ob man diesen ersetzen kann und somit ein Zielfenster für die Links bestimmen kann.
Den Standardpsalm, dem Benutzer die Freiheit der Wahl, wie er das Linkziel angezeigt haben will, zu lassen, spare ich mir mal (fast).
Mit JavaScript geht das, inclusive der Einschränkung, dass es nicht funktioniert, wenn kein JavaScript zur Verfügung steht. Ansonsten steht es dir frei, einen Doctype zu verwenden, bei dem das Attribut target erlaubt ist (XHTML 1.0 transitional/frameset). Target und einen Strict-Doctype (XHTML 1.1 ist dies automatisch) in _einem_ Dokument zu verwenden geht nicht.
Tschö, Auge
Hallo,
Mit JavaScript geht das
Du meinst in etwa so?
document.write("<a href=\"...\" target=\"_blank\">...</a>");
;-)
Keine Sorge, ich weiß schon, was Du meinst. Aber ein Javascript mit window.open ist genauso (X)HTML-strict-valide wie die obige Konstruktion. Nur was soll das bringen? "Ätsch bätsch, blöder Validator!!! Ich habe Dich ausgetrickst!!1"? Dem Validator ist es egal, ob er ausgetrickst wird. Letzten Endes trickst der Autor doch nur sich selbst aus (oder noch schlimmer den Kunden, dem er eine valide Seite versprochen hat). Wer das Qualitätsmerkmal Validität um jeden Preis erreichen will und nur durch "faule Tricks" erreicht, hat nicht wirklich begriffen, was Validität bedeutet und kann in meinen Augen auch gleich darauf verzichten.
Viele Grüße
Carsten
Hallo
Aber ein Javascript mit window.open ist genauso (X)HTML-strict-valide wie die obige Konstruktion. Nur was soll das bringen? "Ätsch bätsch, blöder Validator!!! Ich habe Dich ausgetrickst!!1"? Dem Validator ist es egal, ob er ausgetrickst wird. Letzten Endes trickst der Autor doch nur sich selbst aus (oder noch schlimmer den Kunden, dem er eine valide Seite versprochen hat). Wer das Qualitätsmerkmal Validität um jeden Preis erreichen will und nur durch "faule Tricks" erreicht, hat nicht wirklich begriffen, was Validität bedeutet und kann in meinen Augen auch gleich darauf verzichten.
Mich musst du nicht missionieren. :-)
Ich wollte M. nur nicht die Information vorenthalten, _dass_ es geht. Wichtiger war mir, ihn darauf hinzuweisen, dass sich target und strict ausschließen und er deshalb einen Doctype verwenden soll, der target erlaubt oder target schlicht weglassen soll.
Tschö, Auge
Hallo Auge,
Mich musst du nicht missionieren. :-)
Hatte ich auch nicht vor... ;-)
Ich nahm auch nicht an, daß Du Javascript als ernsthafte Lösung vorgeschlagen hattest.
Ich wollte M. nur nicht die Information vorenthalten, _dass_ es geht.
Und ich wollte den Hinweis auf Javascript abgesehen vom Hinweis auf das mögliche Nicht-Funktionieren nicht so unkommentiert im Raum stehen lassen. Sonst benutzt es hinterher tatsächlich jemand... ;-)
Viele Grüße
Carsten