Предупреждения действительных атрибутов HTML5 в Eclipse
Я использую Eclipse, и я пишу файлы jsp с содержимым HTML5.
Поэтому у меня есть, например, эта строка:
<div class="test" data-role="test123">
В Eclipse я получаю предупреждение:
Undefined attribute name (data-role)
Что нужно сделать, чтобы эти предупреждения больше не появлялись? В HTML5 этот атрибут разрешен (data- *), как вы можете видеть здесь: http://ejohn.org/blog/html-5-data-attributes/
С наилучшими пожеланиями.
Ответы
Ответ 1
Кажется, что у Eclipse все еще есть некоторые проблемы, проверяющие элементы и атрибуты HTML5 даже сейчас.
Я запускаю Mars 4.5.1, и у меня были предупреждения об элементе <main>
, несмотря на то, что нет никаких предупреждений об элементе <section>
.
Но есть решение!
Window > Preferences > Web > HTML Files > Validation
→ → → → → → → Здесь вы можете отметить галочку Ignore specified element names in validation
и ввести имена любых элементов, о которых Eclipse неправильно предупреждает о вас.
В вашем случае вам нужно отметить галочку Ignore specified attribute names in validation
и ввести атрибут data-role
.
После нажатия кнопки "Применить", Eclipse попросит вас выполнить полную проверку проекта. Выберите "Да", и изменения вступят в силу.
Нет более коротких желтых линий YAY!: D
Ответ 2
Ваш doctype
для HTML 4.01.
В HTML 5 были добавлены атрибуты data- *. Тип doctype для HTML 5 в основном либо
<!DOCTYPE html SYSTEM "about:legacy-compat">
или
<!DOCTYPE html>
Ответ 3
Более новые версии Eclipse поддерживают теги HTML5 и атрибуты data- *, разрешенные в HTML5. Однако при использовании атрибута роли правильный синтаксис в соответствии с ARIES Roles Model и атрибутом XHTML-модуля не префикс атрибута роли с данными - *, оставив только роль, а не роль данных.
Итак, <ul role="menubar">
вернее, чем <ul data-role="menubar">
. Справедливость синтаксиса можно проверить с помощью (X) HTML5 Validator. jQuery Mobile довольно широко использует атрибут data-role, хотя я не уверен, почему.
Примечание.. Если вы обновляете и все еще получаете предупреждения об атрибутах data- *, вы можете рассмотреть возможность обновления или удаления любых установленных синтаксических проверок, таких как JTidy. Начиная с версии 1 службы Indigo атрибут роли продолжает запускать предупреждение атрибута undefined в Eclipse по умолчанию.
Ответ 4
Я использовал этот вариант с Aptana 3.6, когда кодирую AngularJS
Окно > Настройки
![Choose Ignore Proprietary Attributes]()
Ответ 5
Я использую плагин Aptana Studio в Mac OS X; если я иду Eclipse > Preferences > Aptana Studio > Validation > HTML
и создаю фильтр *data-role*
, я больше не получаю это предупреждение.
Я считаю, что в Windows это Window > Preferences > Aptana Studio > Validation > HTML
![Aptana HTML Validation]()
Ответ 6
Eclipse 3.6 представила новое поле под:
Validation -> HTML Syntax: Ignore specified attribute names in validation
Добавьте OpenGraph, RDFa или другие атрибуты, отличные от HTML5, которые вы хотите, чтобы валидатор игнорировал:
![Ignore specified attribute names in validation]()
Вам нужно будет повторно проверить проект, после чего предупреждения не будут.