Bug #98463
openNu HTML Validator (the one from validator.w3.org) changed how they validate self-closing tags
0%
Description
This seems to have been a very recent change, and it causes the validator at validator.w3.org now to warn about a lot of self-closing tags, that should no longer be self-closing.
https://github.com/validator/validator/issues/1430
Mostly affected are instances of <img>
, <br>
, <link>
and <meta>
The canonical <link>
ag generated by EXT:seo seems to add />
, and all <meta> tags added by the TYPO3 MetaTag generators seem to add />
as well, and I couldn't find a way to prevent that, without having to xclass or similar unpretty solutions.
The TagBuilder
, used by e.g. the <f:image>
ViewHelper also adds />
on self-closing tags.. which is probably a bit harder to solve, as the TagBuilder
could potentially represent any tag.
<br />
tags, output by the RTE are also affected. Not sure if it's possible to prevent that here with some parseFunc setting.
Greetings
Updated by Lars Peter Søndergaard about 2 years ago
Lars Peter Søndergaard wrote:
This seems to have been a very recent change, and it causes the validator at validator.w3.org now to warn about a lot of self-closing tags, that should no longer be self-closing.
(How do I edit)
This was bad wording on my part. Should be: "warn about a lot of self-closing tags with trailing />
, that no longer should have that trailing /
"
Updated by Chris Müller almost 2 years ago
- Related to Bug #99497: HTML Validation: Info: Trailing slash on void elements has no effect and interacts badly with unquoted attribute values. added
Updated by Luc Muller almost 2 years ago
+1 on this issue.
I can have a fully valid code but the self closing tags sends info notice on the validator and this can be easily improved.
Here's the explanations :
https://github.com/validator/validator/wiki/Markup-%C2%BB-Void-elements#trailing-slashes-in-void-element-start-tags-do-not-mark-the-start-tags-as-self-closing
https://github.com/validator/validator/wiki/Markup-%C2%BB-Void-elements#trailing-slashes-directly-preceded-by-unquoted-attribute-values
Updated by Rémy DANIEL almost 2 years ago
The rendering of tags should depends on if the document is a xml document and on the html doctype.
Some enhancements have been done recently: see https://github.com/TYPO3/typo3/blob/569724111c8d04b9fca2119f1c454e0ac17021d4/typo3/sysext/core/Classes/Type/DocType.php#L114 and its usage.
But the TagBuilder still needs to adapt: https://github.com/TYPO3/Fluid/blob/c4c625884f6486afd8fb0ae7fc190b14051dc40c/src/Core/ViewHelper/TagBuilder.php#L255
Updated by Oliver Schröder over 1 year ago
The Fluid view helper format.nl2br should be updated too. It uses the PHP function nl2br() which renders <br /> by default.
Updated by Heinz Schilling 6 months ago
- TYPO3 Version changed from 11 to 12
Still reproducable in 12.4.15