Accessibility Test Results

Test Summary

URL: https://ondemand.ddev.site/announcements

Test Spec: N/A

Date: 11/21/2025, 5:55:40 PM

Total Violations: 6

Critical: 1

Serious: 1

Moderate: 4

Minor: 0

Violations

heading-order - Heading levels should only increase by one

Impact: moderate

Description: Ensure the order of headings is semantically correct

Help: Heading levels should only increase by one

Tags: cat.semantics, best-practice

Affected Elements (1)

<h3 class="card-title mt-10">Filter Announcements</h3>

Target: .mt-10

Failure Summary:
Fix any of the following:
Heading order invalid

image-alt - Images must have alternative text

Impact: critical

Description: Ensure elements have alternative text or a role of none or presentation

Help: Images must have alternative text

Tags: cat.text-alternatives, wcag2a, wcag111, section508, section508.22.a, TTv5, TT7.a, TT7.b, EN-301-549, EN-9.1.1.1, ACT

Affected Elements (1)

<img width="120" height="120" src="/themes/nect-theme/img/NSF_logo.svg">

Target: img[width="120"]

Failure Summary:
Fix any of the following:
Element does not have an alt attribute
aria-label attribute does not exist or is empty
aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty
Element has no title attribute
Element's default semantics were not overridden with role="none" or role="presentation"

landmark-one-main - Document should have one main landmark

Impact: moderate

Description: Ensure the document has a main landmark

Help: Document should have one main landmark

Tags: cat.semantics, best-practice

Affected Elements (1)

<html lang="en" dir="ltr" class=" js">

Target: html

Failure Summary:
Fix all of the following:
Document does not have a main landmark

landmark-unique - Landmarks should have a unique role or role/label/title (i.e. accessible name) combination

Impact: moderate

Description: Ensure landmarks are unique

Help: Landmarks should have a unique role or role/label/title (i.e. accessible name) combination

Tags: cat.semantics, best-practice

Affected Elements (1)

<nav class="navbar navbar-expand secondary-nav navbar-light bg-light " id="secondaryNav">

Target: #secondaryNav

Failure Summary:
Fix any of the following:
The landmark must have a unique aria-label, aria-labelledby, or title to make landmarks distinguishable

link-name - Links must have discernible text

Impact: serious

Description: Ensure links have discernible text

Help: Links must have discernible text

Tags: cat.name-role-value, wcag2a, wcag244, wcag412, section508, section508.22.a, TTv5, TT6.a, EN-301-549, EN-9.2.4.4, EN-9.4.1.2, ACT

Affected Elements (1)

<a class="nsf-logo" href="https://www.nsf.gov/" target="_blank" rel="noopener"> <img width="120" height="120" src="/themes/nect-theme/img/NSF_logo.svg"> </a>

Target: .nsf-logo

Failure Summary:
Fix all of the following:
Element is in tab order and does not have accessible text

Fix any of the following:
Element does not have text that is visible to screen readers
aria-label attribute does not exist or is empty
aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty
Element has no title attribute

region - All page content should be contained by landmarks

Impact: moderate

Description: Ensure all page content is contained by landmarks

Help: All page content should be contained by landmarks

Tags: cat.keyboard, best-practice

Affected Elements (8)

<div id="block-ood-page-title">

Target: #block-ood-page-title

Failure Summary:
Fix any of the following:
Some page content is not contained by landmarks
<div class="layout__region layout__region--first">

Target: .layout__region--first

Failure Summary:
Fix any of the following:
Some page content is not contained by landmarks
<div>

Target: .layout__region--second > div:nth-child(1)

Failure Summary:
Fix any of the following:
Some page content is not contained by landmarks
<div class="js-form-item form-item js-form-type-textfield form-item-combine js-form-item-combine form-group">

Target: .js-form-type-textfield

Failure Summary:
Fix any of the following:
Some page content is not contained by landmarks
<div class="js-form-item form-item js-form-type-select form-item-field-affiliation-value js-form-item-field-affiliation-value form-group">

Target: .form-item-field-affiliation-value

Failure Summary:
Fix any of the following:
Some page content is not contained by landmarks
<div class="js-form-item form-item js-form-type-select form-item-field-affinity-group-node-target-id js-form-item-field-affinity-group-node-target-id form-group">

Target: .form-item-field-affinity-group-node-target-id

Failure Summary:
Fix any of the following:
Some page content is not contained by landmarks
<div class="js-form-item form-item js-form-type-select form-item-tid js-form-item-tid form-group">

Target: .form-item-tid

Failure Summary:
Fix any of the following:
Some page content is not contained by landmarks
<div>

Target: .layout__region--second > div:nth-child(3)

Failure Summary:
Fix any of the following:
Some page content is not contained by landmarks