2016-06-20 6 views
1

Ich baue einen Bild-Slider mit benutzerdefinierten HTML-Elementen. Es wird von den meisten Browsern unterstützt, aber es gibt auch eine Bibliothek für diejenigen, die nicht "Dokument-Register-Element.js"Benutzerdefinierte HTML-DOM-Elemente HTML-Validierung

Es funktioniert wie erwartet.

Die Frage, die ich habe, ist, ist das gültig?

Zum Beispiel habe ich dieses benutzerdefinierte Element in HTML <cp-slider></cp-slides>

Im Javascript als HTML-Element registriert ist document.registerElement('cp-slider', {prototype: proto});

Hier https://validator.w3.org/ es als Fehler zeigt. Aber es überprüft nicht das JS der Datei. Also sollte ich benutzerdefinierte DOM-Elemente vermeiden? Oder in der "echten Validierung (von Google vielleicht für SEO)" wird es kein Problem sein?

Vielen Dank!

+0

Mögliche Duplikate von [Sind benutzerdefinierte Elemente gültig HTML5?] (Http://stackoverflow.com/questions/9845011/are-custom-elements-valid-html5) –

+0

(Das ist eine sehr alte Frage, aber die markiert-korrekt Antwort ist immer noch korrekt.) –

Antwort

1

Es wird ein Fehler in der Validierungssite angezeigt, da wahrscheinlich nur die Standard-HTML-Syntax überprüft wird. Sie sollten benutzerdefinierte DOM-Elemente nicht unbedingt vermeiden, sie sind in manchen Fällen sehr nützlich. Mit dem Framework AngularJS können Sie solche benutzerdefinierten Elemente (sog. Direktiven) problemlos definieren. Dies kann sich auf Ihre SEO auswirken oder auch nicht, abhängig davon, was versteckt ist. Google kann angeblich einige Details ableiten, aber Sie müssen sehen, was in Ihrem speziellen Fall passiert.