Top 10 Accessibility Issues in Spain
These are the main A11Y issues found in the most prominent Spain websites for the main sectors.
Last update: Sunday, March 15, 2026
1. All touch targets must be 24px large, or leave sufficient space. 37.86%
Touch targets that are smaller than 24 by 24 CSS pixels and don’t have enough spacing from neighboring targets can be extremely difficult for many users to activate accurately. To fix this, ensure every interactive element is at least 24 by 24 CSS pixels in size, or if a target is smaller than that, provide enough surrounding space so that a 24-pixel-diameter circle centered on the target doesn’t overlap with any other target or its spacing circle.
2. Links must have discernible text. 24.65%
Every link on a page must have text that can be recognized by assistive technologies such as screen readers. Links without discernible text — whether due to missing inner text, empty alt attributes on image links, or hidden content — leave users unable to determine where the link goes or what it does. To fix this, ensure every link has visible text content, a meaningful aria-label, aria-labelledby attribute, or an image with descriptive alt text inside it.
3. Elements must meet minimum color contrast ratio thresholds. 12.29%
Text elements must have sufficient color contrast between the foreground text and the background behind it. WCAG 2.1 (AA) requires a contrast ratio of at least 4.5:1 for normal-sized text and 3:1 for large text. To fix violations, adjust your text color, background color, or both until the required contrast ratio is met.
4. <li> elements must be contained in a <ul> or <ol>. 9.23%
Every <li> element must be nested inside a <ul> (unordered list) or <ol> (ordered list) parent element. Without a proper list container, screen readers cannot identify the content as a list or announce how many items it contains. To fix this, wrap all <li> elements in the appropriate <ul> or <ol> tag.
5. Elements must have their visible text as part of their accessible name. 6.43%
Interactive elements that have a visible text label must include that same text within their accessible name. When an aria-label or aria-labelledby attribute overrides the default accessible name, it must still contain the visible label text so that speech input users can activate the control by saying what they see. To fix this, ensure the accessible name includes the full visible text, ideally starting with it.
6. Styled <p> elements must not be used as headings. 4.07%
Styled <p> elements that visually resemble headings — through bold text, larger font sizes, or italics — must be replaced with proper heading elements (<h1> through <h6>). Screen readers and other assistive technologies rely on semantic HTML to convey document structure, and a styled paragraph provides no structural information regardless of how it looks visually. To fix this, replace any <p> element being used as a visual heading with the appropriate heading element that matches its level in the page hierarchy.
7. <ul> and <ol> must only directly contain <li>, <script> or <template> elements. 1.88%
Ordered (<ol>) and unordered (<ul>) lists must only contain <li> elements as direct children (along with non-content elements like <script> or <template>). When other content elements such as <div>, <p>, or <span> are placed directly inside a list, screen readers cannot properly convey the list structure to users, making the content harder to understand. To fix this, ensure every content element inside a <ul> or <ol> is wrapped in an <li> element.
8. Elements must only use permitted ARIA attributes. 1.37%
ARIA attributes must be compatible with the role assigned to an element. When an element uses an ARIA attribute that is prohibited for its role, assistive technologies may ignore the attribute entirely or behave unpredictably, causing important information to be lost. To fix this, remove the prohibited attribute and find an alternative way to convey the information, such as changing the element’s role, adding visible text, or moving the attribute to a supported element.
9. Elements should not have tabindex greater than zero. 1.24%
Setting a tabindex attribute to a value greater than zero creates an unpredictable tab order that can disorient users and make elements appear to be skipped entirely. To fix this, either change the value to tabindex="0" to place the element in the natural tab order, remove tabindex entirely and restructure the HTML so elements appear in the desired sequence, or use tabindex="-1" with JavaScript to programmatically manage focus.
10. Interactive controls must not be nested. 0.99%
Interactive controls such as <button>, <a>, and elements with interactive ARIA roles must not contain other focusable or interactive elements. When interactive controls are nested, screen readers fail to announce the inner elements, creating silent tab stops that leave users unable to understand or operate the controls. To fix this, flatten your markup so that each interactive element stands on its own without nesting one inside another.
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.
Pro Trial
Full Pro access. Cancel anytime.
Start Pro Trial →Join teams across 40+ countries