Skip to main content

Ensure Pointer Target Size or Spacing is Sufficient

Disabilities Affected: Mobility, Visual
Success Criterion: 2.5.8
Level: AA
The size of the target for pointer inputs is at least 24 by 24 CSS pixels, except where:
  • Spacing: The target offset is at least 24 CSS pixels from adjacent targets.
  • Equivalent: The function can be achieved through a different control on the same page that meets the size requirement.
  • Inline: The target is in a sentence or block of text.
  • User Agent control: The size is determined by the user agent and not modified by the author.
  • Essential: A particular presentation is essential.

Why It Matters

This AA criterion provides a minimum target size requirement, less strict than the AAA version (2.5.5 – 44x44px), but still crucial for usability. It helps users with motor impairments avoid accidentally hitting adjacent targets, especially on touchscreens or with imprecise pointing devices. Even 24x24px is significantly easier to hit than very small targets. The spacing exception allows for smaller targets if they are well-separated.

Fixing the Issue

Ensure interactive elements have a clickable area of at least 24×24 CSS pixels OR ensure there is sufficient space (at least 24px) between adjacent small targets. Use CSS width, height, min-width, min-height, and padding to achieve the target size. Use margin to ensure adequate spacing between targets if they are smaller than 24x24px. Test target sizes and spacing, especially in constrained environments like mobile views.


Good Code Example

Meeting minimum target size or providing sufficient spacing:

  • <style>
      .aa-target-button {
        /* Meets 24x24 minimum via padding + font size */
        padding: 5px 10px;
        min-height: 24px;
        min-width: 24px;
        font-size: 1rem;
        border: 1px solid #555;
        margin: 5px; /* Adds space around */
        box-sizing: border-box;
      }
    
      .small-icon-spaced {
        display: inline-block;
        width: 18px; /* Smaller than 24px */
        height: 18px;
        background-color: lightblue; /* Placeholder */
        /* BUT, sufficient margin provides spacing */
        margin: 12px; /* 12px margin on each side = 24px spacing */
        cursor: pointer;
      }
    </style>
    
    <button class="aa-target-button">Action A</button>
    
    <span class="small-icon-spaced" role="button" tabindex="0" aria-label="Option 1"></span>
    <span class="small-icon-spaced" role="button" tabindex="0" aria-label="Option 2"></span>
    <span class="small-icon-spaced" role="button" tabindex="0" aria-label="Option 3"></span>

Bad Code Example

Small targets placed close together:

  • <style>
      .tiny-link {
        display: inline-block;
        width: 16px; /* Fails 24px minimum */
        height: 16px;
        background-color: pink;
        margin: 2px; /* Only 4px spacing between adjacent links - Fails spacing exception */
        border: 1px solid red;
      }
    <a href="#1" class="tiny-link" aria-label="Action 1"></a><a href="#2" class="tiny-link" aria-label="Action 2"></a><a href="#3" class="tiny-link" aria-label="Action 3"></a></style>
Search Ultimate Guide
Tablet displaying an eBook cover titled 'Integrating Accessibility Compliance Into Your Budget' by AccessiTREE. The cover features a digital tree with accessibility-related icons, symbolizing inclusive design and compliance.
Free eBook
Integrating Accessibility Compliance Into Your Budget
A Practical Guide for Healthcare Leaders Navigating the New HHS Ruling

Need Help with Compliance?
Our team is here to guide you through the process of meeting accessibility standards. Contact us today to get started.