Kann ich <link>
Tags im Textkörper einer HTML - Seite? Ich habe versucht, die Antwort auf diese Frage zu finden, fand aber widersprüchliche Informationen.
Wenn Sie Schema.org-Mikrodaten-Markup zu einer HTML-Seite hinzufügen, möchten Sie einem Link-Tag wie folgt kanonische Informationen hinzufügen:
<div itemscope itemtype="http://schema.org/Book">
<span itemprop="name">The Catcher in the Rye</span>—
<link itemprop="url" href="http://en.wikipedia.org/wiki/The_Catcher_in_the_Rye" />
by <span itemprop="author">J.D. Salinger</span>
</div>
Ich habe den obigen Beispielcode von Schema.org erhalten . Dies sei der richtige Weg für Leute, die einen kanonischen Verweis auf ein Itemprop einfügen möchten, aber keinen Hyperlink auf ihre Website setzen möchten.
W3 gibt jedoch deutlich an, dass <link>
Tags nur innerhalb des head-Abschnitts platziert werden sollten, wodurch das Schema.org-Beispiel ungültig wird.
Wenn ich mich an die korrekte Auszeichnung halten möchte, welchen Rat sollte ich befolgen?
Antworten:
Microdata erweitert HTML5 so, dass
link
undmeta
Elemente im verwendet werden könnenbody
, wenn sie einitemprop
Attribut enthalten .Diese Erweiterung ist derzeit auch im HTML 5.1 Nightly (Editor's Draft) enthalten (siehe
link
Element undmeta
Element ). Da die Microdata-Spezifikation kürzlich zu einem W3C-Hinweis wurde , müssen wir sehen, was mit dieser Referenz passiert.RDFa 1.1 erweitert HTML5 so, dass
link
undmeta
Elemente in verwendet werden könnenbody
, wenn sie einpropertỳ
Attribut enthalten .Sie sind also nicht verwenden darf jedes
link
Element ( zum Beispiel<link href="" rel="" />
) in derbody
, sondern nur diejenigen mit einemitemprop
Attribut (für Mikrodaten) resp. einproperty
Attribut (für RDFa).So kann Ihr
link
Element in folgenden Bereichen verwendet werdenbody
:quelle
<link>
Tag im Body verwenden, solange es ein itemprop-Attribut enthält? Und solange das itemprop-Attribut enthalten ist, kann ich auch so aufnehmen,href
wie es in meiner ursprünglichen Frage verwendet wurde?href
auf jeden Fall das Attribut angeben . Solange daslink
Element einitemprop
Attribut hat, können Sie es in derbody
. Dann handelt es sich nicht mehr um Metadaten für das gesamte Dokument (wie es bei üblichenlink
Elementen in der der Fall wärehead
), sondern um ein "verstecktes" Element für Mikrodaten.W3Schools setzt keine Industriestandards für HTML-Codierung. Es handelt sich lediglich um eine Referenzseite eines Drittanbieters, die in keiner Weise mit dem W3C verbunden ist. W3Schools und andere Websites sind häufig falsch, wenn sie modernste Codierungstechnologien wie Schema und Responsive Design verwenden . Wenn Sie relativ neuen Code verwenden, sollte Ihr One-Stop-Shop W3C sein , um die Compliance-Standards festzulegen, und vielleicht HTML5 Doctor, wenn Sie Hilfe zum Verständnis von HTML5 benötigen, weil diese nicht offiziell sind, aber hoch angesehen werden.
Wenn Sie Ihren Code betrachten, besteht er die W3C-Validierung ohne Probleme mit dem in der enthaltenen Link-Element
<body> </body>
KURZE ANTWORT: Ja, Sie können
<LINK>
innerhalb verwenden,<body> </body>
aber wie Unor in seiner Antwort erwähnt hat, muss itemprop enthalten sein.quelle
Das Link-Element kann dem Hauptteil eines HTML-Dokuments hinzugefügt werden, wenn das
itemprop
Attribut vorhanden ist. Hier ist eine Demo .Hier ist auch ein Beispiel für das Attribut link itemprop .
quelle