Warnings of valid HTML5 attributes in Eclipse

2019-01-07 14:13发布

问题:

I use Eclipse and I write jsp files with HTML5 content. So I have for example this line:

<div class="test" data-role="test123">

In Eclipse I get the warning:

Undefined attribute name (data-role)

What needed to be done so these warnings won't appear anymore? In HTML5 this attribute is allowed (data-*) as you can see here: http://ejohn.org/blog/html-5-data-attributes/

Best Regards.

回答1:

It seems like Eclipse still has some problems validating HTML5 elements and attributes even now.

I'm running Mars 4.5.1 and I have had warnings about the <main> element, despite the fact that there are no warnings about the <section> element.

But there is a solution!

Window > Preferences > Web > HTML Files > Validation

Here you can tick the Ignore specified element names in validation checkbox and enter the names of any elements which Eclipse is incorrectly warning you about.

In your case, you will want to tick the Ignore specified attribute names in validation checkbox and enter the data-role attribute.

After you click 'Apply', Eclipse will ask you to do a full validation of the project. Select 'Yes' and the changes will take effect.

No more squiggly yellow lines YAY! :D



回答2:

Your doctype

is for HTML 4.01.

data-* attributes were added in HTML 5. The doctype for HTML 5 is basically either

<!DOCTYPE html SYSTEM "about:legacy-compat">

or

<!DOCTYPE html>


回答3:

Newer versions of Eclipse support HTML5 tags and the data-* attributes allowed in HTML5. However, when using the role attribute the proper syntax according to the ARIA Roles Model and XHTML Role Attribute Module is not to prefix the role attribute with data-* leaving just role and not data-role.

So <ul role="menubar"> is more correct than <ul data-role="menubar">. The validity of the syntax can be checked using the (X)HTML5 Validator. jQuery Mobile uses quite extensively the data-role attribute, though I'm not sure why.

Note: If you upgrade and you're still getting warnings on data-* attributes you may want to consider updating or removing any installed syntax-checkers such as JTidy. As of Indigo Service Release 1 the role attribute continues to trigger an undefined attribute warning in Eclipse by default.



回答4:

I used this one with Aptana 3.6 when I'am coding AngularJS

Window > Preferences



回答5:

I use the Aptana Studio plugin on Mac OS X; if I go Eclipse > Preferences > Aptana Studio > Validation > HTML, and create the filter *data-role* I no longer get this warning.

I believe on Windows it is Window > Preferences > Aptana Studio > Validation > HTML



回答6:

Eclipse 3.6 introduced a new field under:

Validation -> HTML Syntax: Ignore specified attribute names in validation

Add the OpenGraph, RDFa or other non-HTML5 attributes you want the validator to ignore:

You will need to re-validate the project, then the warnings will be gone.



标签: eclipse html5