{"id":1552,"date":"2025-03-27T17:38:33","date_gmt":"2025-03-27T17:38:33","guid":{"rendered":"https:\/\/html5accessibility.com\/stuff\/?p=1552"},"modified":"2025-03-28T15:40:40","modified_gmt":"2025-03-28T15:40:40","slug":"mind-the-wcag-automation-gap","status":"publish","type":"post","link":"https:\/\/html5accessibility.com\/stuff\/2025\/03\/27\/mind-the-wcag-automation-gap\/","title":{"rendered":"mind the WCAG automation gap"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1558 size-large\" src=\"https:\/\/html5accessibility.com\/stuff\/wp-content\/uploads\/2025\/03\/IMG_3295-1024x669.png\" alt=\"Jonny driving the &quot;automation FTW!&quot; bus (combivan) with David and Patrick enjoying the ride\" width=\"580\" height=\"379\" srcset=\"https:\/\/html5accessibility.com\/stuff\/wp-content\/uploads\/2025\/03\/IMG_3295-1024x669.png 1024w, https:\/\/html5accessibility.com\/stuff\/wp-content\/uploads\/2025\/03\/IMG_3295-300x196.png 300w, https:\/\/html5accessibility.com\/stuff\/wp-content\/uploads\/2025\/03\/IMG_3295-768x502.png 768w, https:\/\/html5accessibility.com\/stuff\/wp-content\/uploads\/2025\/03\/IMG_3295-1200x784.png 1200w, https:\/\/html5accessibility.com\/stuff\/wp-content\/uploads\/2025\/03\/IMG_3295.png 1233w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/p>\n<p class=\"note\"><strong>Disclaimer:<\/strong> this content was partially produced via <strong>automation FTW!<\/strong>\u00a0 Don&#8217;t fear the <strong>AI<\/strong> <strong>future<\/strong> or the <em>reaper<\/em>.<\/p>\n<h2>What can automated tools test without humans?<\/h2>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#non-text-content\">SC 1.1.1 Non-text Content (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect presence or absence of <code>alt<\/code> attributes.<\/li>\n<li>Identify empty\/missing <code>alt<\/code> on <code>&lt;img&gt;<\/code> elements.<\/li>\n<li>Identify images using <code>role=\"presentation\"<\/code> or <code>aria-hidden=\"true\"<\/code>.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Assess if alt text is meaningful or contextually accurate.<\/li>\n<li>Confirm whether the alt conveys the image\u2019s <strong>purpose<\/strong>.<\/li>\n<li>Validate completeness of alternatives for <strong>complex content<\/strong> (e.g., charts).<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#audio-only-and-video-only-prerecorded\">SC 1.2.1 Audio-only and Video-only (Prerecorded) (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect presence of <code>&lt;audio&gt;<\/code> \/ <code>&lt;video&gt;<\/code> elements.<\/li>\n<li>Check for linked transcript or text alternative.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine whether the alternative is equivalent in <strong>information content<\/strong>.<\/li>\n<li>Evaluate <strong>accuracy<\/strong> or <strong>completeness<\/strong> of the transcript or description.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#captions-prerecorded\">SC 1.2.2 Captions (Prerecorded) (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect <code>&lt;track kind=\"captions\"&gt;<\/code> elements.<\/li>\n<li>Identify association with media.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine if captions are <strong>accurate<\/strong>, <strong>complete<\/strong>, or <strong>synchronized<\/strong>.<\/li>\n<li>Evaluate whether all <strong>spoken content and sounds<\/strong> are included.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#audio-description-or-media-alternative-prerecorded\">SC 1.2.3 Audio Description or Media Alternative (Prerecorded) (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect presence of a description track or a text-based alternative.<\/li>\n<li>Identify <code>&lt;track kind=\"descriptions\"&gt;<\/code> or aria-describedby.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Evaluate whether the visual content is <strong>comprehensively described<\/strong>.<\/li>\n<li>Confirm that <strong>essential visual information<\/strong> is not omitted.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#captions-live\">SC 1.2.4 Captions (Live) (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Identify live streaming and detect whether captions are delivered in real time.<\/li>\n<li>Confirm <code>&lt;track kind=\"captions\"&gt;<\/code> on live video.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Evaluate real-time <strong>accuracy<\/strong>, <strong>latency<\/strong>, or <strong>synchronization<\/strong> of captions.<\/li>\n<li>Determine whether captions cover all <strong>spoken content<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#audio-description-prerecorded\">SC 1.2.5 Audio Description (Prerecorded) (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect presence of audio description tracks.<\/li>\n<li>Identify related metadata like <code>&lt;track kind=\"descriptions\"&gt;<\/code>.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Evaluate whether the description accurately conveys <strong>meaningful visuals<\/strong>.<\/li>\n<li>Determine whether users gain <strong>equivalent access<\/strong> to visual content.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#info-and-relationships\">SC 1.3.1 Info and Relationships (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Check for correct use of semantic HTML (e.g., <code>&lt;table&gt;<\/code>, <code>&lt;fieldset&gt;<\/code>, <code>&lt;label&gt;<\/code>).<\/li>\n<li>Identify ARIA roles and relationships (e.g., <code>aria-labelledby<\/code>, <code>aria-describedby<\/code>).<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm whether <strong>visual relationships<\/strong> (like grouping or hierarchy) are represented programmatically.<\/li>\n<li>Detect if semantics match the <strong>intended meaning<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#meaningful-sequence\">SC 1.3.2 Meaningful Sequence (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Analyze DOM order of elements.<\/li>\n<li>Detect visually overlapping items that might confuse sequence.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Judge if the reading order makes <strong>sense<\/strong> to a user.<\/li>\n<li>Determine if <strong>semantic flow<\/strong> aligns with <strong>visual flow<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#sensory-characteristics\">SC 1.3.3 Sensory Characteristics (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect keywords like \u201csee the red button\u201d or \u201cupper-left\u201d.<\/li>\n<li>Flag possible sensory-only references.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Understand whether those references are the <strong>only<\/strong> way of conveying instructions.<\/li>\n<li>Judge if equivalent <strong>non-sensory cues<\/strong> are present.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#orientation\">SC 1.3.4 Orientation (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Check CSS and viewport responsiveness.<\/li>\n<li>Confirm that content isn\u2019t locked to one orientation.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm <strong>usability<\/strong> in both portrait and landscape modes.<\/li>\n<li>Detect visual issues or content loss when switching orientations.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#identify-input-purpose\">SC 1.3.5 Identify Input Purpose (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect autocomplete attributes on <code>input<\/code> fields (e.g., <code>autocomplete=\"email\"<\/code>).<\/li>\n<li>Validate usage against known <code>input<\/code> purposes.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine if the autocomplete value <strong>matches the field\u2019s intended purpose<\/strong>.<\/li>\n<li>Evaluate whether user expectations are met.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#use-of-color\">SC 1.4.1 Use of Color (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect cases where color is the <strong>only distinguishing feature<\/strong>.<\/li>\n<li>Flag form fields or charts using color keys.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Understand if <strong>color meaning<\/strong> is also conveyed via shape, text, or pattern.<\/li>\n<li>Determine whether users can perceive the difference <strong>without color<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#audio-control\">SC 1.4.2 Audio Control (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect media elements set to autoplay with audio &gt; 3 seconds.<\/li>\n<li>Identify if a control is present to pause\/stop audio.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm the <strong>effectiveness<\/strong> or discoverability of the control.<\/li>\n<li>Detect if custom media players meet this need.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#contrast-minimum\">SC 1.4.3 Contrast (Minimum) (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u2705 Auto<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Calculate contrast between text and background.<\/li>\n<li>Flag failures below 4.5:1 (or 3:1 for large text).<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Handle contrast testing over <strong>complex backgrounds<\/strong> (e.g., gradients, images).<\/li>\n<li>Account for user-adjusted styles or overlays.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#resize-text\">SC 1.4.4 Resize Text (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Simulate zoom or large font scaling in test environments.<\/li>\n<li>Detect overlapping or cutoff text.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine whether the <strong>layout remains usable<\/strong> after scaling.<\/li>\n<li>Evaluate if users can <strong>complete tasks<\/strong> at 200% zoom.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#images-of-text\">SC 1.4.5 Images of Text (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect <code>&lt;img&gt;<\/code> or CSS background images that contain visible text.<\/li>\n<li>Identify image-based headings or buttons.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine whether the image of text is <strong>essential<\/strong>.<\/li>\n<li>Judge whether real text could have been used instead.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#reflow\">SC 1.4.10 Reflow (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Simulate viewport resizing (e.g., <code>320px<\/code> wide).<\/li>\n<li>Detect horizontal scrolling or overflow.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Verify whether all content remains <strong>usable<\/strong>.<\/li>\n<li>Assess layout issues affecting user <strong>task completion<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#non-text-contrast\">SC 1.4.11 Non-text Contrast (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Calculate contrast ratios for UI components (e.g., buttons, focus outlines).<\/li>\n<li>Detect contrast failures in icons or input borders.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Recognize visual indicators that <strong>convey meaning<\/strong>.<\/li>\n<li>Confirm whether non-text elements are <strong>functionally important<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#text-spacing\">SC 1.4.12 Text Spacing (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Apply standard spacing overrides via CSS (e.g., line height, letter spacing).<\/li>\n<li>Detect overflow or layout breakage.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine if content remains <strong>readable and usable<\/strong> under spacing changes.<\/li>\n<li>Validate <strong>manual readability<\/strong> and interaction.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#content-on-hover-or-focus\">SC 1.4.13 Content on Hover or Focus (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect some tooltips, popovers, or dropdowns triggered on hover\/focus.<\/li>\n<li>Identify presence of dismiss buttons or escape key bindings.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine if content is <strong>persistent<\/strong>, <strong>dismissible<\/strong>, or <strong>accessible<\/strong> via keyboard.<\/li>\n<li>Assess pointer stability or accidental dismissal.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#keyboard-accessible\">SC 2.1.1 Keyboard (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Identify focusable and interactive elements.<\/li>\n<li>Check for <code>tabindex<\/code>, <code>aria-disabled<\/code>, or missing role.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm full <strong>usability by keyboard<\/strong>.<\/li>\n<li>Determine whether <strong>focus moves logically through the interface<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#no-keyboard-trap\">SC 2.1.2 No Keyboard Trap (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Simulate <strong>basic<\/strong> keyboard navigation within known components.<\/li>\n<li>Identify focus indicators.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm whether a user can <strong>exit<\/strong> a control via keyboard.<\/li>\n<li>Evaluate <strong>navigation loops<\/strong> or missing Escape handlers.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#character-key-shortcuts\">SC 2.1.4 Character Key Shortcuts (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect use of character key triggers (e.g., <code>keydown<\/code> listeners).<\/li>\n<li>Flag if they are bound to single keys without modifiers.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Assess whether shortcuts <strong>interfere<\/strong> with assistive tech.<\/li>\n<li>Verify presence of <strong>disable or remap options<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#timing-adjustable\">SC 2.2.1 Timing Adjustable (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect presence of timeouts or auto-refresh scripts.<\/li>\n<li>Identify timers in forms or interactive sessions.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm whether users have <strong>warnings or controls<\/strong> to adjust timing.<\/li>\n<li>Judge whether time limits are <strong>reasonable<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#pause-stop-hide\">SC 2.2.2 Pause, Stop, Hide (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect moving, blinking, scrolling, or auto-updating elements.<\/li>\n<li>Flag content with animation &gt; 5 seconds.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Verify that users have <strong>clear controls<\/strong> to pause\/stop\/hide content.<\/li>\n<li>Evaluate if motion disrupts user focus.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#three-flashes-or-below-threshold\">SC 2.3.1 Three Flashes or Below Threshold (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u2705 Auto<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Analyze animated or video content for flash frequency.<\/li>\n<li>Detect if content flashes more than 3 times per second.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Identify <strong>all<\/strong> flashing content (especially custom JS\/CSS animations).<\/li>\n<li>Determine whether flashing is within <strong>combined areas<\/strong> that could trigger seizures.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#bypass-blocks\">SC 2.4.1 Bypass Blocks (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect presence of \u201cskip to main content\u201d links.<\/li>\n<li>Identify ARIA landmarks (<code>&lt;main&gt;<\/code>, <code>&lt;nav&gt;<\/code>, etc.).<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm that bypass links <strong>function correctly<\/strong>.<\/li>\n<li>Verify that repeated blocks are <strong>actually bypassed<\/strong> for users.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#page-titled\">SC 2.4.2 Page Titled (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Confirm presence of <code>&lt;title&gt;<\/code> in <code>&lt;head&gt;<\/code>.<\/li>\n<li>Check for duplicates or emptiness.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Judge whether the title is <strong>descriptive or meaningful<\/strong>.<\/li>\n<li>Assess whether it accurately reflects <strong>page content<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#focus-order\">SC 2.4.3 Focus Order (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Read the DOM\/tab order.<\/li>\n<li>Flag unusual jumps or unreachable elements.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Evaluate whether the focus order <strong>matches visual\/reading order<\/strong>.<\/li>\n<li>Confirm whether users can <strong>complete tasks logically<\/strong> by keyboard.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#link-purpose-in-context\">SC 2.4.4 Link Purpose (In Context) (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Read link text and surrounding content.<\/li>\n<li>Flag vague terms like \u201cclick here\u201d or \u201cread more\u201d.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine <strong>true link purpose<\/strong> from <strong>contextual meaning<\/strong>.<\/li>\n<li>Verify if users can understand link <strong>destination<\/strong> from context.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#multiple-ways\">SC 2.4.5 Multiple Ways (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect presence of site search, sitemaps, or navigation menus.<\/li>\n<li>Flag pages with only one navigation option.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Evaluate <strong>usefulness<\/strong> of navigation options.<\/li>\n<li>Confirm whether users can <strong>actually find other pages<\/strong> via those methods.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#headings-and-labels\">SC 2.4.6 Headings and Labels (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Check presence of headings, labels, and form field descriptors.<\/li>\n<li>Verify heading structure and nesting.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm <strong>clarity<\/strong> or <strong>descriptiveness<\/strong> of labels\/headings.<\/li>\n<li>Assess if headings match content <strong>purpose or topic<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#focus-visible\">SC 2.4.7 Focus Visible (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Confirm presence of visible focus indicators via CSS.<\/li>\n<li>Detect outline suppression (e.g., <code>outline:none<\/code>).<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine if the indicator is <strong>visible enough<\/strong> for real users.<\/li>\n<li>Assess contrast, motion, or <strong>user perceptibility<\/strong> of the focus.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#focus-not-obscured-minimum\">SC 2.4.11 Focus Not Obscured (Minimum) (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect if focused elements have <code>overflow:hidden<\/code> or are offscreen.<\/li>\n<li>Identify layering issues that might hide focus.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm <strong>real visual obstruction<\/strong> (e.g., by sticky headers).<\/li>\n<li>Test whether users can <strong>see<\/strong> the current focus during use.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#pointer-gestures\">SC 2.5.1 Pointer Gestures (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u2705 Auto<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect multi-point or path-based gestures.<\/li>\n<li>Confirm availability of single-point alternatives.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Judge <strong>intended meaning<\/strong> of gestures.<\/li>\n<li>Assess usability for users with <strong>limited dexterity<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#pointer-cancellation\">SC 2.5.2 Pointer Cancellation (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u2705 Auto<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Check that actions only trigger on <code>mouseup<\/code> or <code>completion<\/code> events.<\/li>\n<li>Verify support for cancel or undo.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Evaluate user experience when cancellation is triggered.<\/li>\n<li>Confirm whether accidental taps are <strong>easily reversible<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#label-in-name\">SC 2.5.3 Label in Name (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Compare the <strong>visible label<\/strong> with the <strong>accessible name<\/strong> (<code>aria-label<\/code>, <code>aria-labelledby<\/code>).<\/li>\n<li>Flag mismatches where visible text is not part of the accessible name.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine if mismatches cause <strong>confusion or disorientation<\/strong>.<\/li>\n<li>Account for <strong>intentional differences<\/strong> that are still accessible.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#motion-actuation\">SC 2.5.4 Motion Actuation (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u2705 Auto<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect usage of device motion sensors (e.g., <code>DeviceMotionEvent<\/code>, <code>orientationchange<\/code>).<\/li>\n<li>Confirm availability of alternate input methods.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Test for <strong>usability<\/strong> of motion alternatives.<\/li>\n<li>Validate cobformance on <strong>real physical devices<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#dragging-movements\">SC 2.5.7 Dragging Movements (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect draggable elements or use of drag-and-drop APIs.<\/li>\n<li>Flag lack of keyboard-accessible alternatives.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm whether the <strong>keyboard equivalent<\/strong> provides full functionality.<\/li>\n<li>Assess if drag actions are usable with <strong>assistive tech<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#target-size-minimum\">SC 2.5.8 Target Size (Minimum) (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Measure dimensions of clickable\/touchable elements.<\/li>\n<li>Check minimum size threshold (<code>24px<\/code> \u00d7 <code>24px<\/code>).<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Account for <strong>proximity<\/strong> to other controls.<\/li>\n<li>Evaluate whether <strong>exceptions apply<\/strong> (e.g., inline links, user-agent controls).<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#language-of-page\">SC 3.1.1 Language of Page (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li>Detect <code>lang<\/code> attribute on <code>&lt;html&gt;<\/code>.<\/li>\n<li>Compare it to known language codes.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm if the declared language <strong>matches the actual content<\/strong>.<\/li>\n<li>Handle pages with <strong>mixed or incorrect language declarations<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#language-of-parts\">SC 3.1.2 Language of Parts (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect <code>lang<\/code> attributes on elements with inline language changes.<\/li>\n<li>Flag missing or invalid <code>lang<\/code> attributes.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm whether language changes are <strong>semantically accurate<\/strong>.<\/li>\n<li>Detect whether user agents (like screen readers) <strong>announce changes correctly<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#on-focus\">SC 3.2.1 On Focus (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect scripts that trigger actions on focus events (e.g., <code>onfocus<\/code>).<\/li>\n<li>Flag <code>input<\/code> elements that invoke DOM changes on focus.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Judge whether those changes are <strong>unexpected<\/strong> or <strong>disruptive<\/strong>.<\/li>\n<li>Evaluate actual <strong>user experience<\/strong> caused by focus-triggered behavior.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#on-input\">SC 3.2.2 On Input (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect form elements that trigger changes on <code>onchange<\/code>, <code>oninput<\/code>, etc.<\/li>\n<li>Flag when changes occur <strong>without user confirmation<\/strong>.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Assess whether the triggered action is <strong>unexpected or confusing<\/strong>.<\/li>\n<li>Judge if users have the ability to <strong>review and correct<\/strong> before submission.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#consistent-identification\">SC 3.2.3 Consistent Navigation (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u2705 Auto<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect repeated navigation menus or regions across pages.<\/li>\n<li>Compare DOM structure of navigation blocks.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm whether small visual differences <strong>impact usability<\/strong>.<\/li>\n<li>Determine if order changes cause <strong>disorientation<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#consistent-identification\">SC 3.2.4 Consistent Identification (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Compare labels, roles, and accessible names of components across views.<\/li>\n<li>Identify differences in naming or function.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine if <strong>functionally identical controls<\/strong> are inconsistently identified.<\/li>\n<li>Evaluate whether inconsistencies <strong>confuse users<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#consistent-help\">SC 3.2.6 Consistent Help (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0fPartial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect presence of help mechanisms across pages, such as:\n<ul>\n<li>Help links (e.g., \u201cNeed help?\u201d, \u201cContact support\u201d)<\/li>\n<li>Tooltips, inline instructions, or chat buttons<\/li>\n<li>Check for consistency in placement (e.g., always in header\/footer\/sidebar)<\/li>\n<li>Flag pages where help is missing but expected (based on a defined pattern)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Determine whether the help provided is <strong>actually helpful, usable, or understandable<\/strong><\/li>\n<li>Judge whether the help mechanism remains <strong>consistent in meaning<\/strong> across different contexts<\/li>\n<li>Confirm that the help element <strong>supports the task the user is trying to complete<\/strong><\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#error-identification\">SC 3.3.1 Error Identification (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect form fields with validation rules.<\/li>\n<li>Identify presence of ARIA error messaging (<code>aria-invalid<\/code>, <code>aria-describedby<\/code>).<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm whether error messages are <strong>clear and helpful<\/strong>.<\/li>\n<li>Determine if <strong>all errors<\/strong> are surfaced to the user in an accessible way.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#labels-or-instructions\">SC 3.3.2 Labels or Instructions (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect presence of labels via <code>&lt;label&gt;<\/code> or <code>aria-label<\/code>.<\/li>\n<li>Flag missing instructions for required fields.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Judge whether instructions are <strong>understandable<\/strong> or <strong>sufficient<\/strong>.<\/li>\n<li>Confirm if labels convey <strong>correct context<\/strong>.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#error-suggestion\">SC 3.3.3 Error Suggestion (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect forms with required fields and validation.<\/li>\n<li>Identify whether suggestions are surfaced in markup.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Judge <strong>usefulness<\/strong> or <strong>accuracy<\/strong> of suggestions.<\/li>\n<li>Evaluate if suggestions are <strong>clear enough<\/strong> to help users correct input.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#error-prevention-legal-financial-data\">SC 3.3.4 Error Prevention (Legal, Financial, Data) (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect confirmations, summaries, or <code>confirm()<\/code> dialogs.<\/li>\n<li>Check for <code>autocomplete=\"off\"<\/code> or forms without undo\/review options.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Verify whether users are given a <strong>real opportunity to review<\/strong>.<\/li>\n<li>Confirm if <strong>critical actions<\/strong> are truly reversible or clearly explained.<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#redundant-entry\">SC 3.3.7 Redundant Entry (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0fPartial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect repeated fields with identical name or label attributes within a form<\/li>\n<li>Identify previously entered values that are re-requested on subsequent steps\/pages<\/li>\n<li>Check for presence of autofill features or reuse of data via <code>autocomplete<\/code>, session storage, or JavaScript<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm whether the user <strong>was already asked<\/strong> to enter the same information earlier in the process<\/li>\n<li>Determine if the <strong>repeated entry is necessary<\/strong> due to security or workflow reasons<\/li>\n<li>Evaluate whether <strong>a mechanism is provided<\/strong> to avoid requiring re-entry (e.g., \u201cSame as billing address\u201d checkbox)<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#accessible-authentication-minimum\">SC 3.3.8 Accessible Authentication (Minimum) (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0fPartial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect the presence of password fields, security questions, CAPTCHAs, and multi-factor authentication (MFA) inputs.<\/li>\n<li>Flag authentication processes requiring memory recall (e.g., user must enter a known password or type in a one-time code).<\/li>\n<li>Identify whether autocomplete is disabled on login forms.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Confirm whether alternatives (e.g., copy\/paste, password managers, biometric login) are <strong>supported and usable<\/strong>.<\/li>\n<li>Determine if the task <strong>involves a cognitive function test without offering an accessible method<\/strong>.<\/li>\n<li>Judge whether the overall authentication process <strong>excludes users with cognitive disabilities<\/strong>.<\/li>\n<\/ul>\n<h4 id=\"x4-1-1-parsing-obsolete-and-removed\"><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#parsing\"><bdi class=\"secno\">SC 4.1.1 <\/bdi>Parsing (Obsolete and removed)<\/a><\/h4>\n<blockquote><p>This criterion was originally adopted to address problems that assistive technology had directly parsing\u00a0<abbr title=\"HyperText Markup Language\">HTML<\/abbr>. Assistive technology no longer has any need to directly parse\u00a0<abbr title=\"HyperText Markup Language\">HTML<\/abbr>. Consequently, these problems either no longer exist or are addressed by other criteria. This criterion no longer has utility and is removed.<\/p><\/blockquote>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#name-role-value\">SC 4.1.2 Name, Role, Value (A)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Verify that interactive elements expose name, role, and value via accessibility APIs.<\/li>\n<li>Detect missing ARIA roles or attributes.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Evaluate <strong>correctness<\/strong> of those roles and attributes.<\/li>\n<li>Ensure that dynamic elements update <strong>live values<\/strong> properly (e.g., via ARIA live regions).<\/li>\n<\/ul>\n<h3><a href=\"https:\/\/www.w3.org\/TR\/WCAG22\/#status-messages\">SC 4.1.3 Status Messages (AA)<\/a><\/h3>\n<p><strong>Testability<\/strong>: \u26a0\ufe0f Partial<\/p>\n<h4>Automation can:<\/h4>\n<ul>\n<li>Detect ARIA roles like <code>alert<\/code>, <code>status<\/code>, <code>log<\/code>.<\/li>\n<li>Confirm whether content changes are exposed programmatically.<\/li>\n<\/ul>\n<h4>Automation cannot:<\/h4>\n<ul>\n<li>Judge if the message is <strong>clear or relevant<\/strong>.<\/li>\n<li>Verify whether users <strong>actually perceive<\/strong> the status update (e.g., via screen reader).<\/li>\n<\/ul>\n<h3>Blue Oyster Cult &#8211; (Don&#8217;t Fear) The Reaper<\/h3>\n<p><iframe loading=\"lazy\" title=\"YouTube video player\" src=\"https:\/\/www.youtube.com\/embed\/Dy4HA3vUv2c?si=xXsEKyhlAVxeWUVo\" width=\"560\" height=\"315\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n<details>\n<summary>Lyrics<\/summary>\n<pre>All our times have come\r\nHere but now they're gone\r\nSeasons don't fear the reaper\r\nNor do the wind, the sun or the rain\r\nWe can be like they are\r\nCome on, baby (don't fear the reaper)\r\nBaby, take my hand (don't fear the reaper)\r\nWe'll be able to fly (don't fear the reaper)\r\nBaby, I'm your man\r\nLa, la, la, la, la\r\nLa, la, la, la, la\r\nValentine is done\r\nHere but now they're gone\r\nRomeo and Juliet\r\nAre together in eternity (Romeo and Juliet)\r\n40, 000 men and women everyday (like Romeo and Juliet)\r\n40, 000 men and women everyday (redefine happiness)\r\nAnother 40, 000 coming everyday (we can be like they are)\r\nCome on, baby (don't fear the reaper)\r\nBaby, take my hand (don't fear the reaper)\r\nWe'll be able to fly (don't fear the reaper)\r\nBaby, I'm your man\r\nLa, la, la, la, la\r\nLa, la, la, la, la\r\nLove of two is one\r\nHere but now they're gone\r\nCame the last night of sadness\r\nAnd it was clear she couldn't go on\r\nThen the door was open and the wind appeared\r\nThe candles blew and then disappeared\r\nThe curtains flew and then he appeared\r\nSaying don't be afraid\r\nCome on, baby (and she had no fear)\r\nAnd she ran to him (then they started to fly)\r\nThey looked backward and said goodbye (she had become like they are)\r\nShe had taken his hand (she had become like they are)\r\nCome on, baby (don't fear the reaper)\r\n<\/pre>\n<\/details>\n","protected":false},"excerpt":{"rendered":"<p>Disclaimer: this content was partially produced via automation FTW!\u00a0 Don&#8217;t fear the AI future or the reaper. What can automated tools test without humans? SC 1.1.1 Non-text Content (A) Testability: \u26a0\ufe0f Partial Automation can: Detect presence or absence of alt attributes. Identify empty\/missing alt on &lt;img&gt; elements. Identify images using role=&#8221;presentation&#8221; or aria-hidden=&#8221;true&#8221;. Automation cannot: [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1552","post","type-post","status-publish","format-standard","hentry","category-htmlaccessibility"],"_links":{"self":[{"href":"https:\/\/html5accessibility.com\/stuff\/wp-json\/wp\/v2\/posts\/1552","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/html5accessibility.com\/stuff\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/html5accessibility.com\/stuff\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/html5accessibility.com\/stuff\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/html5accessibility.com\/stuff\/wp-json\/wp\/v2\/comments?post=1552"}],"version-history":[{"count":14,"href":"https:\/\/html5accessibility.com\/stuff\/wp-json\/wp\/v2\/posts\/1552\/revisions"}],"predecessor-version":[{"id":1570,"href":"https:\/\/html5accessibility.com\/stuff\/wp-json\/wp\/v2\/posts\/1552\/revisions\/1570"}],"wp:attachment":[{"href":"https:\/\/html5accessibility.com\/stuff\/wp-json\/wp\/v2\/media?parent=1552"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/html5accessibility.com\/stuff\/wp-json\/wp\/v2\/categories?post=1552"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/html5accessibility.com\/stuff\/wp-json\/wp\/v2\/tags?post=1552"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}