Skip to main content
HTML Validation

Bad value “presentation” for attribute “role” on element “video”.

About This HTML Issue

The role="presentation" attribute is not allowed on the video element because it is an interactive media element that conveys meaningful content to users.

The role="presentation" (or its synonym role="none") is used to tell assistive technologies that an element is purely decorative and has no semantic meaning. However, the HTML specification restricts which elements can use this role. Interactive elements like video, button, input, and a (with href) cannot have their semantics removed because doing so would hide important functionality from users who rely on assistive technologies.

A video element provides media controls and content that users need to interact with. Stripping its semantics would make it invisible or confusing to screen reader users. If the video is truly decorative (like a background video), there are better approaches than using role="presentation".

If the video is decorative or used as a background, you can hide it from assistive technologies entirely using aria-hidden="true". If the video has meaningful content, keep its native semantics and provide a proper accessible label instead.

Bad Example

<video role="presentation" autoplay muted loop>
  <source src="background.mp4" type="video/mp4">
</video>

Fixed Example — Decorative/Background Video

<video aria-hidden="true" autoplay muted loop>
  <source src="background.mp4" type="video/mp4">
</video>

Fixed Example — Meaningful Video

<video controls aria-label="Product demo walkthrough">
  <source src="demo.mp4" type="video/mp4">
</video>

Find issues like this automatically

Rocket Validator scans thousands of pages in seconds, detecting HTML issues across your entire site.

Help us improve our guides

Was this guide helpful?
🌍 Trusted by teams worldwide

Validate at scale.
Ship accessible websites, faster.

Automated HTML & accessibility validation for large sites. Check thousands of pages against WCAG guidelines and W3C standards in minutes, not days.

Scheduled Reports
API Access
Open Source Standards
$7 / 7 days

Pro Trial

Full Pro access. Cancel anytime.

Start Pro Trial →

Join teams across 40+ countries