Frage

Während target = „_ blank“ veraltet ist, warum wird der W3C-Validator einen Fehler nicht darüber zu geben? Sie können diesen Code einfügen und überprüfen int die Validator :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>

<p>
<a href="http://www.stackoverflow.com" title="New window will open" target="_blank">Link opens in new window</a>
</p>
</body>
</html>

Edit:

Bedeutet es, dass XHTML 1.1 unterstützt target =“_ blank“, aber XHTML 1.0 strict nicht? Oder ist es ein Fehler in dem W3C-Validator?

War es hilfreich?

Lösung

Sie werden als XHTML validiert Transitional statt Strenge . Wenn Sie manuell die Doctype XHTML 1.0 Strict außer Kraft setzen Sie diese Fehlermeldung erhalten:

  

Fehler Zeile 11, Spalte 76:. Attribut "target" existiert, kann aber nicht für dieses Element verwendet wird

     

... om“title = "Neues Fenster öffnen" target = "_ blank"> Link öffnet in neuem Fenster

Verwenden Sie dieses Doctype, wenn Sie streng sein wollen:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Die Übergangsschemata erlauben noch bestimmte veraltete Elemente und Attribute, ich denke, Menschen zu helfen, Übergang in Schritten in Richtung einer strengeren Markup.

EDIT:

OK, also der ursprüngliche Code war XHTML 1.1, von denen gibt es nur eine einzige Version (kein Strict / Transitional) und gemäß diese FAQ das Zielattribut ist in der Tat nicht erlaubt. Also ich denke, das ist ein Fehler in dem Validator sein muss.

Andere Tipps

Es ist veraltet, aber nicht entfernt. Deshalb denke ich, es ist Problem, dass bei der Validierung.

Die XHTML1.1 Dokumentation zeigt, dass das Zielattribut eines a Element sein kann „alles“.

Hat es bedeutet, XHTML 1.1 Unterstützung target =“_ blank“ aber XHTML 1.0 strict nicht?

Nun, ja.

Wenn Sie eine Lösung für Ihr Problem benötigen, dann ist dies einer von ihnen. Eine weitere Möglichkeit ist die Verwendung window.open () anstelle von target = "_ blank".

Ich habe den Code und ich bekam die folgende Fehlermeldung.

gefunden Fehler beim Diesem Dokument als XHTML 1.1 Überprüfung!

Validierung Ausgang: 1 Fehler

  1. Fehler Zeile 11, Spalte 76: Es gibt kein Attribut "Ziel"

    ... .com“title = "Neues Fenster wird geöffnet" target = "_ blank"> Link öffnet in neuem Fenster

Der Validator arbeitet als von 2012.01.30. Sie können nicht passieren Validierung Ziel mit = „_ blank“

Ersetzen Sie mit diesem gültigen Teil des Codes:

Onclick = "target = '_ blank';"

Während xhtml unterstützen kann „targrt =“ _ blank“, es wird nicht bestätigen, weil sie abgeschrieben worden hasen. Wenn Sie nicht JS verwenden mögen, werden Sie Übergang verwenden, anstatt streng in Ihrem‚Dokumenttyp‘ .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top