Rocket Validator automatically scans your sites for accessibility issues using the W3C Validator,
hosted on our own servers and integrated into our web crawler.
A start tag for
<img> has been found inside a
<noscript> section within the
<head>, where it’s not allowed. Consider moving it to the
<noscript> element defines a section of HTML to be inserted if a script type on the page is unsupported or if scripting is currently turned off in the browser.
<noscript> will be used instead, so this content must fit within its parent section. As an
<img> tag is not allowed inside
<head>, this will raise an issue. Instead, consider moving the
<noscript> part to the
This issue is often related to 3rd party tracking pixels like the Facebook or LinkedIn conversion tracking pixels. For example, the Facebook pixel instructions tell you to insert it like this:
<html> <head> <script> ...some script... </script> <noscript> <img src="..." /> </noscript> </head> <body> ... </body> </html>
Instead, consider moving the
<noscript> part inside the
<body>, where the
<img> makes sense to be inserted:
<html> <head> <script> ...some script... </script> </head> <body> ... <noscript> <img src="..." /> </noscript> </body> </html>
Related W3C validator issues
<img> tags, used to include images on a document, require an alt attribute to describe the contents of the image. This is essential for users that cannot see the image (like screen reader users), or as an alternate text when the image cannot be displayed. Example:
<img src="photo.jpg" alt="Person holding a cat" />
The src attribute for <img> tags is required, to define the source of the image, like in this example:
<img src="photo.jpg" alt="wombat" />
Space characters are not allowed in src attributes. Instead, they should be converted to %20. In this example, the first line is invalid and the second is valid:
<img src="https://example.com/?s=some term" alt="description" />
<img src="https://example.com/?s=some%20term" alt="description" />
The src attribute on an <img> tag is not allowed to contain space characters. You should replace them with “%20“.
<img> elements accept a width attribute to specify the size in pixels. This value can only be an integer, it should not contain units or %. If you need to specify a percentage width, you can do that with CSS:
<img src="photo.jpg" alt="red car" style="width:100%;">
The width attribute on <img> elements expects a digit to indicate the number of pixels. Ensure that this attribute contains only digits.
<!-- This is invalid because width is not a digit -->
<img width="225px" alt="cat" src="cat.jpg" />
<!-- This is valid -->
<img width="225" alt="cat" src="cat.jpg" />
<img> tags used to display images require the attribute src to indicate the source of the image, for example <img src="/img/photo.jpg" />.
<img> tags no longer accept a border attribute. This can be defined using CSS instead, for example:
<img src="..." alt="..." style="border:0;" />
A single <img> element is used to embed an image, so adding the img role to it is redundant.
The ARIA img role can be used to identify multiple elements inside page content that should be considered as a single image. These elements could be images, code snippets, text, emojis, or other content that can be combined to deliver information in a visual manner, for example:
<div role="img" aria-label="Description of the overall image">
<img src="graphic1.png" alt="">
Check the HTMLImageElement.srcset guide to learn about the correct usage of the srcset and sizes attributes.