Подтвердить что ты не робот

Ошибка проверки HTML-атрибута атрибута свойства

Я использую несколько плагинов для facebook, и я использую мета-заголовок. При проверке страницы валидатор W3C выдает ошибку → "Ошибка: свойство атрибута отсутствует".

Я использую XHTML Transitional doctype - <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Pls Предложите, если мне нужно изменить doctype на что-то еще.

4b9b3361

Ответ 1

Плагины Facebook используют Open Graph, который построен на RDFa. Он RDFa, который добавляет атрибут property к элементам. Без этого добавления обычный HTML не имеет такого атрибута. (Если вы спросите меня, это странный дизайн, чтобы добавить новый атрибут без имён пространства имен и повторно использовать половину тега <meta>. Но никто не делал этого.)

Чтобы проверить XHTML-с-RDFa, вам понадобится DOCTYPE:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">

Это означает, что вам придется писать действительный XHTML 1.1. Подробнее

Ответ 2

Чтобы документ утверждал, что он соответствует документу HTML + RDFa, он должен предоставить средства, описанные как обязательные в этом разделе. Ниже перечислены критерии соответствия документа, из которых только подмножество является обязательным:

  • Все требования к совместимости документов, указанные как обязательные в спецификации HTML5, должны быть выполнены.
  • В элементе html должен быть атрибут version. Значение атрибута version должно быть HTML+RDFa 1.0, если документ является документом режима, отличным от XML, или XHTML+RDFa 1.0, если документ является документом режима XML.
  • Может быть элемент ссылки, содержащийся в элементе head, который содержит профиль для атрибута rel и http://www.w3.org/1999/xhtml/vocab для href.

Пример:

<html version="HTML+RDFa 1.1" lang="en">
  <head>
    <title>Example Document</title>
  </head>
  <body>
    <p>Moved to <a href="http://example.org/">example.org</a>.</p>
  </body>
</html>

Ответ 3

Как Open Graph предлагает, если вы используете HTML5, вам лучше использовать атрибут префикса, например:

<!doctype html>
<html prefix="og: http://ogp.me/ns#">
  <head>
    <title>HTML5 site</title>
    <meta property="og:title" content="The Rock" />
  </head>
  <body>
  </body>
</html>

Вы можете оставить doctype как есть, и он будет validate.

Этот подход также был рекомендован разработчиком Open Graph.