Accessibility digest

Contents

Synopsis
PageKamala Harris and Tim Walz
URLhttps://kamalaharris.com/
Test date2024/09/22
Score7009
Configuration
Redirectionspermitted
Tool isolationno
Report format(s)standard
Requester
Devicedefault
Browser typewebkit
Reduced motionnot requested
Tested byTestaro, procedure president2024
Scored byTestilo, procedure tsp50
Digested byTestilo, procedure tdp50
Full report 240922T1609-o20-00.json

Introduction

How accessible is the Kamala Harris and Tim Walz web page at https://kamalaharris.com/?

This digest gives one answer to that question. Eleven different tools (Alfa, ASLint, Axe, Editoria11y, Equal Access, HTML CodeSniffer, Nu Html Checker, QualWeb, Testaro, WAVE, and WallyAX) tested the page to check its compliance with their accessibility rules. In all, the tools define about a thousand rules, which are classified here into about three hundred accessibility issues.

The results were interpreted to yield a score, with 0 being ideal. The score for this page was 7009, the sum of 700 for the count of issues, 3833 for specific issues, 0 for unclassified rule violations, 929 for tool-by-tool ratings, 1146 for the count of violating elements, 300 for the page preventing tools from running, 101 for browser warnings, and 0 for delayed page responses.

How the page was scored

Introduction

This is an explanation of the scoring of the page.

Motivations for scoring

Why score? Specifically, why aggregate many facts about a page into a single number?

One motivation is to simplify comparison and tracking. If you want to compare a page with other pages, or if you want to track changes in a page over time, aggregating many test results for each page into one page score simplifies the task. It becomes possible to say things like Page A is more accessible than page B or Page A is becoming more accessible over time.

Another motivation is to influence behavior. A score arises from decisions about importance, urgency, and other attributes. People may use scores to award benefits, impose costs, or prioritize work. So, scoring can influence who gets and does what.

How to score?

Scoring is subjective. Accessibility testing tools use various scoring procedures, based on various ideas.

The built-in scoring procedures of Testilo are based on the idea that multiple attributes should affect a web-page accessibility score, including:

Some ideas found elsewhere in accessibility scoring are rejected by the Testilo procedures:

Scoring method summary

The scoring method is found in the code of the procedure. The file for any procedure tspnn is in the file procs/score/tspnn.js within the Testilo package.

The score computed by this procedure for any page is a non-negative number. The numbers represent accessibility faults, so a higher-scoring page is considered less accessible than a lower-scoring page. The best possible score is 0.

The procedure makes the score of a page the sum of 7 components:

Scoring method details

The above component descriptions omit various details.

About a thousand tool rules are classified into issues in the tic50.js file used by this procedure. Each of those rules has a quality, ranging from 0 to 1. When the issue score is computed, the count of violations of each rule is multiplied by the quality of that rule. Whichever tool has the largest quality-weighted violation count for an issue, that count is treated as the instance count for the issue. Thus, if 8 tools each report 15 violations within the issue, and their rule qualities are all 1, the instance count is 15, not 120. Moreover, the issue itself has a weight, ranging from 1 to 4, representing its importance. This instance count is multiplied by that weight. That product is further multiplied by the issueCountWeight value, namely 10. That final product is further adjusted if the issue is inherently limited in instance count. For example, if the issue is that the page html element has no lang attribute, the instance count is limited to 1. If there is such a limit, the maxWeight value, namely 30, is divided by the actual instance count and the quotient is added to 1. That product (or 1 if there is no limit) is multiplied by the instance count, and then the result is treated as the contribution of the issue to the issue score.

Each solo (not yet issue-classified) rule violation is multiplied by the sum of 1 and the ordinal severity of the rule, to produce the solo score.

Each rule violation reported by each tool is severity-weighted in the same way as solo rule violations are. Then the sum of those violations is multiplied by the toolWeight value, namely 0.1, to produce the tool score.

The count of elements reported as violators of any rule is multiplied by the elementWeight value, namely 2, to produce the element score.

The count of prevented Testaro rules is multiplied by the testaroRulePreventionWeight quantity, namely 30, and the count of other prevented tools is multiplied by the preventionWeight value, namely 300, to produce the prevention score.

The log score is the sum of several components:

Each of these components is multiplied by a weight found in the logWeights object.

Finally, the latency score is based on how much longer it took for the page to become loaded and stable than expected. The expected total duration in seconds is the normalLatency value, namely 22 seconds (that is 2 seconds per visit, multiplied by the 11 visits of the 11 tools). This is subtracted from the actual total latency, and that difference is multiplied by the latencyWeight amount, namely 2.

Issue summary

Details about this summary

The summary

Sorting is by score.

How many violations each tool reported, by issue
IssueWCAGWeightScoreInstance counts
color missing1.4.342208qualWeb:552
ID not unique4.1.14260aslint:65, nuVal:12, alfa:0, axe:0, htmlcs:0, ibm:0, qualWeb:0, wax:0
page hidden2.4.74124testaro:1
error reference invalid3.3.14104qualWeb:26, ibm:0
line height low1.4.82102testaro:51, alfa:0
text contrast improvable1.4.6183aslint:83, axe:6, qualWeb:1, alfa:0, htmlcs:0, wax:0
not exactly 1 h1 heading1.3.1262aslint:1, wave:1, axe:0, nuVal:0
link indication poor1.3.3258testaro:29, alfa:0, axe:0
attribute value invalid1.3.1452nuVal:13, ibm:0, wax:0
all-capital text3.1.5149aslint:49, ed11y:2, testaro:10, alfa:0
void element has trailing slash4.1147nuVal:47
tab-opening link action unstated?3.2.5145aslint:45, htmlcs:32, testaro:42
label empty1.3.1345aslint:15, wave:14, htmlcs:0, wax:0
target small2.5.5142testaro:42, alfa:0
parent invalid1.3.1440nuVal:10, ibm:0
links named identically2.4.4234aslint:17, qualWeb:0, testaro:0
tab-opening link action unstated3.2.5333ed11y:22
type redundant1.3.1128nuVal:28
labeling risky3.3.2124aslint:24
image dubiously named1.1.1124aslint:3, qualWeb:24, wave:0
element referenced by multiple labels1.3.1124aslint:24, wave:12, axe:0, ibm:0
skip method missing or invalid2.4.1324ibm:1, axe:0, wave:0, wax:0
focus indication poor2.4.7424testaro:6, alfa:0, aslint:0
fieldset missing?1.3.1120aslint:20, htmlcs:0, wax:0
labeled element ambiguous1.3.1420aslint:5, nuVal:0
text and image link not combined2.4.4218wave:9, aslint:0, qualWeb:0
svg image not named1.1.1416aslint:4, ibm:1, alfa:0, axe:0, qualWeb:0, wax:0
title attribute invalid1.3.1416testaro:4
button not named4.1.2412aslint:3, htmlcs:1, wave:1, alfa:0, axe:0, nuVal:0, qualWeb:0, wax:0
inconsistent heading, link, or button styles3.2.4111testaro:11
heading structure illogical1.3.1210aslint:5, htmlcs:3
nav links not list1.3.1210htmlcs:5
image link text suspect2.4.4110qualWeb:13
role invalid4.1.239axe:3, alfa:0, aslint:0, ibm:0, nuVal:0, qualWeb:0
overflow hidden?1.4.419qualWeb:9
select not named4.1.239wave:3, axe:0, htmlcs:0, wax:0
attribute missing4.1.248nuVal:2, axe:0, ibm:0, wax:0
attribute invalid1.3.148nuVal:2, aslint:0, axe:0, ibm:0, wax:0
heading level skipped1.3.128wave:4, alfa:0, axe:0, ed11y:0, wax:0
link href missing1.3.126aslint:3, htmlcs:0, nuVal:0, testaro:0
section heading missing1.3.116nuVal:6
text contrast not testable1.4.315htmlcs:5, alfa:0, aslint:0
font size absolute1.4.425qualWeb:3, alfa:0
dialog not named4.1.244aslint:1, axe:0, wax:0
iframe not named4.1.244aslint:1, alfa:0, axe:0, htmlcs:0, ibm:0, qualWeb:0, wax:0
link names a file instead of a purpose2.4.414ed11y:4
heading-like styles dubious1.3.114htmlcs:1, wave:4, axe:0, ed11y:0
presentation element has child1.3.144htmlcs:1
link element invalid1.3.144htmlcs:1, nuVal:0, wax:0
link not named2.4.444htmlcs:1, wave:1, alfa:0, axe:0, ed11y:0, ibm:0, qualWeb:0, wax:0
figure not named1.1.144ibm:1
dubious aria-label1.3.114nuVal:4
focusable element inoperable2.1.124testaro:2
operable element not focusable2.1.144testaro:1
role assigned instead of implicit4.1.214testaro:4
z-index not zero1.414testaro:4
label reference invalid1.3.144wave:1, aslint:0, htmlcs:0, nuVal:0, wax:0
nesting invalid4.1.133nuVal:1
element closure invalid4.1.133nuVal:1
box size absolute1.4.433qualWeb:1
tabindex redundant1.3.112aslint:2
content beyond landmarks1.3.612axe:2, ibm:2, alfa:0, wax:0
image dubiously marked decorative1.1.112htmlcs:2
position sticky1.4.1012htmlcs:2, aslint:0
image alt long1.1.122wave:1, ed11y:0
noscript element not equivalent?4.112wave:2
link name vague2.4.411aslint:1, wave:1, ed11y:0
image name redundant1.1.111aslint:1, wave:1, axe:0, ibm:0
name dubiously mouse-specific2.4.411aslint:1
filter style4.111testaro:1

Itemized issues

The reported rule violations are itemized below, issue by issue. Additional details can be inspected in the full report.

Issue: color missing

Impact: Content is impossible to perceive under some conditions

WCAG: 1.4.3

Score: 2208

Elements

None identified

Violations of qualWeb rules

Rule QW-WCAG-T31

Description: Foreground or background color is specified but not both

Count of instances: 552

Issue: ID not unique

Impact: User may be pointed to the wrong item

WCAG: 4.1.1

Score: 260

Elements

None identified

Violations of aslint rules

Rule duplicated_id_attribute

Description: Element id attribute value is not unique

Count of instances: 65

Violations of nuVal rules

Rule ^Duplicate ID .+$|^The first occurrence of ID .* was here.*$

Description: Duplicate id

Count of instances: 12

Issue: page hidden

Impact: User cannot get the document content

WCAG: 2.4.7

Score: 124

Elements

None identified

Violations of testaro rules

Rule allHidden

Description: Content is entirely or mainly hidden

Count of instances: 1

Issue: error reference invalid

Impact: User cannot correct a form error

WCAG: 3.3.1

Score: 104

Elements

None identified

Violations of qualWeb rules

Rule QW-ACT-R41

Description: Error message describes no invalid form field value

Count of instances: 26

Issue: line height low

Impact: Text is difficult to read

WCAG: 1.4.8

Score: 102

Elements

Violations of testaro rules

Rule lineHeight

Description: Text has a line height less than 1.5 times its font size

Count of instances: 51

Issue: text contrast improvable

Impact: Content is not easy to understand

WCAG: 1.4.6

Score: 83

Elements

None identified

Violations of aslint rules

Rule color_contrast_aaa7

Description: Text has contrast less than 7:1

Count of instances: 82

Rule color_contrast_aaa4

Description: Text has contrast less than 4.5:1

Count of instances: 1

Violations of axe rules

Rule color-contrast-enhanced

Description: Element has insufficient color contrast (Level AAA)

Count of instances: 6

Violations of qualWeb rules

Rule QW-ACT-R76

Description: Text has less than the enhanced minimum contrast

Count of instances: 1

Issue: not exactly 1 h1 heading

Impact: User cannot understand the topic of the document

WCAG: 1.3.1

Score: 62

Elements

None identified

Violations of aslint rules

Rule h1_must_be

Description: Page contains no h1 element

Count of instances: 1

Violations of wave rules

Rule h1_missing

Description: Missing first level heading

Count of instances: 1

Issue: link indication poor

Impact: User cannot differentiate a link from plain text

WCAG: 1.3.3

Score: 58

Elements

Violations of testaro rules

Rule linkUl

Description: Inline links are not underlined

Count of instances: 29

Issue: attribute value invalid

Impact: Item behaves improperly

WCAG: 1.3.1

Score: 52

Elements

None identified

Violations of nuVal rules

Rule ^Bad value .* for attribute .+ on element .+$

Description: Attribute on this element has an invalid value

Count of instances: 13

Issue: all-capital text

Impact: Text is difficult to read

WCAG: 3.1.5

Score: 49

Elements

Violations of aslint rules

Rule capital_letters_words

Description: Element or its title has entirely upper-case words

Count of instances: 49

Violations of ed11y rules

Rule textUppercase

Description: Element contains more than 4 consecutive upper-case words

Count of instances: 2

Violations of testaro rules

Rule allCaps

Description: Element has a text substring of at least 8 upper-case characters

Count of instances: 10

Issue: void element has trailing slash

Impact: Document contains invalid code

WCAG: 4.1

Score: 47

Elements

None identified

Violations of nuVal rules

Rule Trailing slash on void elements has no effect and interacts badly with unquoted attribute values.

Description: Void element has a useless trailing slash.

Count of instances: 47

Issue: tab-opening link action unstated?

Impact: Following a link opens a new window, possibly surprising a user

WCAG: 3.2.5

Score: 45

Elements

Violations of aslint rules

Rule links_new_window_mark

Description: Indicator that the link opens a new window or tab may be missing

Count of instances: 45

Violations of htmlcs rules

Rule AAA.3_2_5.H83.3

Description: Link text may fail to indicate that the link will open in a new window

Count of instances: 32

Violations of testaro rules

Rule linkExt

Description: Link opens a new window or tab

Count of instances: 42

Issue: label empty

Impact: User cannot get help on the topics of form items

WCAG: 1.3.1

Score: 45

Elements

None identified

Violations of aslint rules

Rule empty_label_element

Description: Element has no content

Count of instances: 14

Rule aria_labelledby_association_empty_element

Description: Referenced label has no content

Count of instances: 1

Violations of wave rules

Rule label_empty

Description: Empty form label

Count of instances: 14

Issue: target small

Impact: User cannot reliably choose an item to click or tap

WCAG: 2.5.5

Score: 42

Elements

Violations of testaro rules

Rule targetSize

Description: Button, input, or non-inline link is smaller than 44 px wide and high

Count of instances: 42

Issue: parent invalid

Impact: User cannot properly operate an item

WCAG: 1.3.1

Score: 40

Elements

None identified

Violations of nuVal rules

Rule ^Element .+ not allowed as child of element .+ in this context.*$

Description: Element has an invalid parent

Count of instances: 10

Issue: links named identically

Impact: User cannot get help differentiating links

WCAG: 2.4.4

Score: 34

Elements

None identified

Violations of aslint rules

Rule links_same_content_different_url

Description: Links with the same text content have different destination URLs

Count of instances: 17

Issue: tab-opening link action unstated

Impact: Following a link opens a new window, surprising a user

WCAG: 3.2.5

Score: 33

Elements

Violations of ed11y rules

Rule linkNewWindow

Description: Link opens a new window or tab without prior notice

Count of instances: 22

Issue: type redundant

Impact: Document includes unnecessary code

WCAG: 1.3.1

Score: 28

Elements

None identified

Violations of nuVal rules

Rule The type attribute is unnecessary for JavaScript resources.

Description: type attribute is unnecessary for a JavaScript resource

Count of instances: 28

Issue: labeling risky

Impact: User may misunderstand a form control

WCAG: 3.3.2

Score: 24

Elements

None identified

Violations of aslint rules

Rule missing_labelN

Description: Element has an id attribute but no explicit label references it

Count of instances: 24

Issue: image dubiously named

Impact: Helper may describe an image inadequately

WCAG: 1.1.1

Score: 24

Elements

None identified

Violations of aslint rules

Rule alt_color_convey_information

Description: Text alternative may fail to give information provided by colors

Count of instances: 3

Violations of qualWeb rules

Rule QW-WCAG-T8

Description: Text alternative is suspect

Count of instances: 24

Issue: element referenced by multiple labels

Impact: User cannot get reliable help on the topics of form items

WCAG: 1.3.1

Score: 24

Elements

None identified

Violations of aslint rules

Rule duplicated_for_attribute

Description: More than 1 label element has the same for attribute

Count of instances: 24

Violations of wave rules

Rule label_multiple

Description: Form control has more than one label associated with it

Count of instances: 12

Issue: skip method missing or invalid

Impact: Keyboard-only user cannot easily reach the specific content of the document

WCAG: 2.4.1

Score: 24

Elements

None identified

Violations of ibm rules

Rule skip_main_exists

Description: Page provides no way to quickly navigate to the main content

Count of instances: 1

Issue: focus indication poor

Impact: Keyboard-only user cannot choose an item to operate

WCAG: 2.4.7

Score: 24

Elements

Violations of testaro rules

Rule focInd

Description: Focused element displays a nonstandard or no focus indicator

Count of instances: 6

Issue: fieldset missing?

Impact: User may be unable to get help recognizing a group of related form items

WCAG: 1.3.1

Score: 20

Elements

None identified

Violations of aslint rules

Rule group_elements_name_attribute

Description: Element is an input with a name attribute but has no fieldset parent

Count of instances: 20

Issue: labeled element ambiguous

Impact: User cannot get help on the topic of a form item

WCAG: 1.3.1

Score: 20

Elements

None identified

Violations of aslint rules

Rule label_implicitly_associatedM

Description: Element contains more than 1 labelable element.

Count of instances: 5

Issue: text and image link not combined

Impact: Keyboard-only user expends extra effort to skip a link

WCAG: 2.4.4

Score: 18

Elements

None identified

Violations of wave rules

Rule link_redundant

Description: Adjacent links go to the same URL

Count of instances: 9

Issue: svg image not named

Impact: User cannot get help understanding an image

WCAG: 1.1.1

Score: 16

Elements

None identified

Violations of aslint rules

Rule accessible_svg

Description: Element has no title, description, text, attribute label, or role description

Count of instances: 4

Violations of ibm rules

Rule svg_graphics_labelled

Description: Element is svg but has no accessible name

Count of instances: 1

Issue: title attribute invalid

Impact: User cannot hover to get help explaining an item

WCAG: 1.3.1

Score: 16

Elements

Violations of testaro rules

Rule titledEl

Description: title attribute belongs to an inappropriate element

Count of instances: 4

Issue: button not named

Impact: User cannot get help explaing a button

WCAG: 4.1.2

Score: 12

Elements

None identified

Violations of aslint rules

Rule empty_button_description

Description: button element has no visible accessible name

Count of instances: 3

Violations of htmlcs rules

Rule AAA.4_1_2.H91.Button.Name

Description: button element has no accessible name

Count of instances: 1

Violations of wave rules

Rule button_empty

Description: button element is empty or has no value text

Count of instances: 1

Issue: inconsistent heading, link, or button styles

Impact: User cannot easily distinguish items of different types

WCAG: 3.2.4

Score: 11

Elements

None identified

Violations of testaro rules

Rule styleDiff

Description: Heading, link, and button style inconsistencies

Count of instances: 11

Issue: heading structure illogical

Impact: Helper misdescribes the document

WCAG: 1.3.1

Score: 10

Elements

None identified

Violations of aslint rules

Rule headings_hierarchy

Description: Heading level is illogical in its context

Count of instances: 5

Violations of htmlcs rules

Rule AAA.1_3_1_AAA.G141

Description: Heading level is incorrect

Count of instances: 3

Issue: nav links not list

Impact: User cannot get help recognizing a list of navigation links

WCAG: 1.3.1

Score: 10

Elements

None identified

Violations of htmlcs rules

Rule AAA.1_3_1.H48

Description: Navigation links are not coded as a list

Count of instances: 5

Issue: image link text suspect

Impact: Keyboard-only user may misunderstand the effect of following a link

WCAG: 2.4.4

Score: 10

Elements

None identified

Violations of qualWeb rules

Rule QW-WCAG-T10

Description: Link name repeats its image name and/or that name is suspect

Count of instances: 13

Issue: role invalid

Impact: User cannot get help on the nature of an item

WCAG: 4.1.2

Score: 9

Elements

None identified

Violations of axe rules

Rule aria-allowed-role

Description: ARIA role is not appropriate for the element

Count of instances: 3

Issue: overflow hidden?

Impact: User may be unable to enlarge the text for readability

WCAG: 1.4.4

Score: 9

Elements

None identified

Violations of qualWeb rules

Rule QW-ACT-R40

Description: Zoomed text node may be clipped by a CSS overflow declaration

Count of instances: 9

Issue: select not named

Impact: User cannot get help on the topic of a list of options

WCAG: 4.1.2

Score: 9

Elements

None identified

Violations of wave rules

Rule select_missing_label

Description: Select element has no label

Count of instances: 3

Issue: attribute missing

Impact: Item behaves improperly

WCAG: 4.1.2

Score: 8

Elements

None identified

Violations of nuVal rules

Rule A link element with a rel attribute that contains the value preload must have an as attribute.

Description: link element with rel="preload" is missing an as attribute

Count of instances: 2

Issue: attribute invalid

Impact: Item behaves improperly

WCAG: 1.3.1

Score: 8

Elements

None identified

Violations of nuVal rules

Rule The itemprop attribute was specified, but the element is not a property of any item.

Description: itemprop attribute is on an element that is not a property of an item

Count of instances: 2

Issue: heading level skipped

Impact: Helper misdescribes the document

WCAG: 1.3.1

Score: 8

Elements

None identified

Violations of wave rules

Rule heading_skipped

Description: Skipped heading level

Count of instances: 4

Issue: link href missing

Impact: Helper cannot properly explain a link to a user

WCAG: 1.3.1

Score: 6

Elements

None identified

Violations of aslint rules

Rule missing_href_on_a

Description: Link has no href attribute

Count of instances: 3

Issue: section heading missing

Impact: User cannot understand the topic of a part of the document

WCAG: 1.3.1

Score: 6

Elements

None identified

Violations of nuVal rules

Rule Section lacks heading. Consider using h2-h6 elements to add identifying headings to all sections, or else use a div element instead for any cases where no heading is needed.

Description: section has no heading

Count of instances: 6

Issue: text contrast not testable

Impact: Text may be difficult to read

WCAG: 1.4.3

Score: 5

Elements

None identified

Violations of htmlcs rules

Rule AAA.1_4_3_F24.F24.BGColour

Description: Inline background color may lack a complementary foreground color

Count of instances: 2

Rule AAA.1_4_6.G17.Abs

Description: Contrast between the absolutely positioned text and its background may be less than 7:1

Count of instances: 1

Rule AAA.1_4_6.G18.Abs

Description: Contrast between the absolutely positioned text and its background may be less than 4.5:1

Count of instances: 2

Issue: font size absolute

Impact: User cannot adjust the text size for readability

WCAG: 1.4.4

Score: 5

Elements

None identified

Violations of qualWeb rules

Rule QW-WCAG-T28

Description: Font size set to an absolute unit value

Count of instances: 3

Issue: dialog not named

Impact: User cannot get help explaining a pop-up window

WCAG: 4.1.2

Score: 4

Elements

None identified

Violations of aslint rules

Rule aria_role_dialog

Description: Element has a dialog role but has no accessible name

Count of instances: 1

Issue: iframe not named

Impact: User cannot get help on the topic of an embedded document

WCAG: 4.1.2

Score: 4

Elements

None identified

Violations of aslint rules

Rule title_iframe

Description: Element is an iframe or object but its title attribute is missing or empty

Count of instances: 1

Issue: link names a file instead of a purpose

Impact: User may fail to understand what a link points to

WCAG: 2.4.4

Score: 4

Elements

Violations of ed11y rules

Rule linkTextIsURL

Description: Name of the element is a file reference instead of a link purpose

Count of instances: 4

Issue: heading-like styles dubious

Impact: User may be unable to understand the topic of a part of the document

WCAG: 1.3.1

Score: 4

Elements

None identified

Violations of htmlcs rules

Rule AAA.1_3_1.H42

Description: Heading coding is not used but the element may be intended as a heading

Count of instances: 1

Violations of wave rules

Rule heading_possible

Description: Possible heading

Count of instances: 4

Issue: presentation element has child

Impact: Keyboard-only user cannot reach an item intended to be reachable

WCAG: 1.3.1

Score: 4

Elements

None identified

Violations of htmlcs rules

Rule AAA.1_3_1.F92,ARIA4

Description: Element has presentation role but semantic child

Count of instances: 1

Issue: link element invalid

Impact: Document fails to get a needed external resource

WCAG: 1.3.1

Score: 4

Elements

None identified

Violations of htmlcs rules

Rule AAA.2_4_8.H59.1

Description: Element is not in the document head

Count of instances: 1

Issue: link not named

Impact: User cannot get help understanding what a link points to

WCAG: 2.4.4

Score: 4

Elements

None identified

Violations of htmlcs rules

Rule AAA.4_1_2.H91.A.NoContent

Description: Link has an href attribute but not named

Count of instances: 1

Violations of wave rules

Rule link_empty

Description: Link contains not named

Count of instances: 1

Issue: figure not named

Impact: User cannot get help on the topic of a figure

WCAG: 1.1.1

Score: 4

Elements

None identified

Violations of ibm rules

Rule figure_label_exists

Description: figure element has no associated label

Count of instances: 1

Issue: dubious aria-label

Impact: User may fail to get help understanding an item in a form

WCAG: 1.3.1

Score: 4

Elements

None identified

Violations of nuVal rules

Rule Possible misuse of aria-label. (If you disagree with this warning, file an issue report or send e-mail to www-validator@w3.org.)

Description: aria-label attribute may be misused

Count of instances: 4

Issue: focusable element inoperable

Impact: Inoperability of an item violates a user expectation

WCAG: 2.1.1

Score: 4

Elements

Violations of testaro rules

Rule focOp

Description: Tab-focusable element is inoperable

Count of instances: 2

Issue: operable element not focusable

Impact: Keyboard-only user cannot navigate properly to an operable item

WCAG: 2.1.1

Score: 4

Elements

Violations of testaro rules

Rule opFoc

Description: Operable element is not Tab-focusable

Count of instances: 1

Issue: role assigned instead of implicit

Impact: User may misunderstand the purpose of an item

WCAG: 4.1.2

Score: 4

Elements

Violations of testaro rules

Rule role

Description: Explicitly assigned ARIA role is also an implicit element role

Count of instances: 4

Issue: z-index not zero

Impact: User cannot predict the effect of clicking

WCAG: 1.4

Score: 4

Elements

Violations of testaro rules

Rule zIndex

Description: Element has a nondefault z-index value

Count of instances: 4

Issue: label reference invalid

Impact: User cannot get help understanding an item in a form

WCAG: 1.3.1

Score: 4

Elements

None identified

Violations of wave rules

Rule label_orphaned

Description: Orphaned form label

Count of instances: 1

Issue: nesting invalid

Impact: Document contains invalid code

WCAG: 4.1.1

Score: 3

Elements

None identified

Violations of nuVal rules

Rule ^End tag .+ violates nesting rules.*$

Description: End tag violates nesting rules

Count of instances: 1

Issue: element closure invalid

Impact: Document contains invalid code

WCAG: 4.1.1

Score: 3

Elements

None identified

Violations of nuVal rules

Rule ^Stray end tag .+$

Description: Invalid closing tag

Count of instances: 1

Issue: box size absolute

Impact: User cannot enlarge the content of an item for readability

WCAG: 1.4.4

Score: 3

Elements

None identified

Violations of qualWeb rules

Rule QW-BP15

Description: Element width is specified in an absolute value

Count of instances: 1

Issue: tabindex redundant

Impact: Revision risks interfering with navigation by a keyboard-only user

WCAG: 1.3.1

Score: 2

Elements

None identified

Violations of aslint rules

Rule misused_tabindex_attribute

Description: Element has an implicit tabIndex value 0, but also has a tabindex attribute

Count of instances: 2

Issue: content beyond landmarks

Impact: User cannot get help on how some of the document is organized

WCAG: 1.3.6

Score: 2

Elements

None identified

Violations of axe rules

Rule region

Description: Some page content is not contained by landmarks

Count of instances: 2

Violations of ibm rules

Rule aria_content_in_landmark

Description: Content is not within a landmark element

Count of instances: 2

Issue: image dubiously marked decorative

Impact: Helper ignores an image that is apparently informative

WCAG: 1.1.1

Score: 2

Elements

None identified

Violations of htmlcs rules

Rule AAA.1_1_1.H67.2

Description: Image marked as decorative may be informative

Count of instances: 2

Issue: position sticky

Impact: User may be unable to see needed content or may be forced to scroll in both dimensions

WCAG: 1.4.10

Score: 2

Elements

None identified

Violations of htmlcs rules

Rule AAA.1_4_10.C32,C31,C33,C38,SCR34,G206

Description: Fixed-position element may force bidirectional scrolling

Count of instances: 2

Issue: image alt long

Impact: Helper gives a user an overly verbose explanation of an image

WCAG: 1.1.1

Score: 2

Elements

None identified

Violations of wave rules

Rule alt_long

Description: Long text alternative

Count of instances: 1

Issue: noscript element not equivalent?

Impact: User who has disabled JavaScript may be denied some content

WCAG: 4.1

Score: 2

Elements

None identified

Violations of wave rules

Rule noscript

Description: noscript element may fail to contain an accessible equivalent or alternative

Count of instances: 2

Issue: link name vague

Impact: User may misunderstand what a link points to

WCAG: 2.4.4

Score: 1

Elements

None identified

Violations of aslint rules

Rule link_with_unclear_purpose

Description: Element is a link but has vague or generic content

Count of instances: 1

Violations of wave rules

Rule link_suspicious

Description: Suspicious link text

Count of instances: 1

Issue: image name redundant

Impact: Helper repeats the explanation of an image

WCAG: 1.1.1

Score: 1

Elements

None identified

Violations of aslint rules

Rule img_alt_duplicate_text_link

Description: Text alternative of the image duplicates the text of the enclosing link

Count of instances: 1

Violations of wave rules

Rule alt_redundant

Description: Redundant text alternative

Count of instances: 1

Issue: name dubiously mouse-specific

Impact: User may misunderstand how to activate a link

WCAG: 2.4.4

Score: 1

Elements

None identified

Violations of aslint rules

Rule click_verb

Description: Mouse-specific word click is in the element text

Count of instances: 1

Issue: filter style

Impact: Item is too distorted for understandability

WCAG: 4.1

Score: 1

Elements

Violations of testaro rules

Rule filter

Description: Element styles include filter

Count of instances: 1

Elements with issues

Elements exhibiting issues:

Element /html/body/div[1]/div/div[1]
Element /html/body/div[1]/div/div[1]/span
Element /html/body/div[1]/div/div[2]/div/a[1]
Element /html/body/div[1]/div/div[2]/div/a[2]
Element /html/body/div[1]/div/div[2]/div/a[3]
Element /html/body/div[1]/div/div[2]/div/a[4]
Element /html/body/div[1]/div/div[2]/div/a[5]
Element /html/body/div[1]/div/div[2]/div/a[6]
Element /html/body/div[1]/div/div[2]/h2
Element /html/body/div[1]/div/div[2]/p/span
Element /html/body/div[2]
Element /html/body/div[2]/div
Element /html/body/div[2]/div/nav/ul
Element /html/body/div[2]/div/nav/ul/li[2]
Element /html/body/div[2]/div/nav/ul/li[3]
Element /html/body/div[2]/div/nav/ul/li[5]
Element /html/body/div[2]/div/nav/ul/li[5]/a
Element /html/body/div[2]/div/nav/ul/li[6]
Element /html/body/div[2]/div/nav/ul/li[6]/a
Element /html/body/div[3]/div/div/a[1]
Element /html/body/div[3]/div/div/a[2]
Element /html/body/div[3]/div/div/a[3]
Element /html/body/div[3]/div/div/a[4]
Element /html/body/div[3]/div/div/a[5]
Element /html/body/footer/div/div[1]/a
Element /html/body/footer/div/div[2]/div[1]/ul/li[4]/a
Element /html/body/footer/div/div[2]/div[1]/ul/li[5]/a
Element /html/body/footer/div/div[2]/div[2]/ul/li[2]/a
Element /html/body/footer/div/div[2]/div[3]/a[1]
Element /html/body/footer/div/div[2]/div[3]/a[2]
Element /html/body/footer/div/div[2]/div[3]/a[3]
Element /html/body/footer/div/div[2]/div[3]/a[4]
Element /html/body/footer/div/div[2]/div[3]/a[5]
Element /html/body/footer/div/div[2]/div[3]/a[6]
Element /html/body/footer/div/div[3]/p[1]/a[1]
Element /html/body/footer/div/div[3]/p[1]/a[2]
Element /html/body/footer/div/div[3]/p[2]/a
Element /html/body/header
Element /html/body/header/div/button
Element /html/body/header/div/div[1]/div[1]/a
Element /html/body/header/div/div[1]/div[2]/nav/ul
Element /html/body/header/div/div[1]/div[2]/nav/ul/li[1]
Element /html/body/header/div/div[1]/div[2]/nav/ul/li[1]/h5
Element /html/body/header/div/div[1]/div[2]/nav/ul/li[1]/ul
Element /html/body/header/div/div[1]/div[2]/nav/ul/li[1]/ul/li[1]/a
Element /html/body/header/div/div[1]/div[2]/nav/ul/li[1]/ul/li[2]/a
Element /html/body/header/div/div[1]/div[2]/nav/ul/li[2]
Element /html/body/header/div/div[1]/div[2]/nav/ul/li[2]/a
Element /html/body/header/div/div[2]/div/a/img
Element /html/body/header/div/div[3]/div[1]/nav/ul
Element /html/body/header/div/div[3]/div[1]/nav/ul/li[1]
Element /html/body/header/div/div[3]/div[1]/nav/ul/li[1]/a
Element /html/body/header/div/div[3]/div[1]/nav/ul/li[2]/a
Element /html/body/header/div/div[3]/div[2]/a
Element /html/body/header/div/div[3]/div[2]/a/span
Element /html/body/main/section/section[1]/div
Element /html/body/main/section/section[1]/div/div/div[1]/h2/span
Element /html/body/main/section/section[1]/div/div/div[2]/div[1]/div/div/div/div[1]/div/div[1]/a
Element /html/body/main/section/section[1]/div/div/div[2]/div[1]/div/div/div/form/div[3]/div/div/p/a
Element /html/body/main/section/section[1]/div/div/div[2]/div[2]/p
Element /html/body/main/section/section[1]/div/div/div[2]/div[2]/p/a
Element /html/body/main/section/section[2]/div/div[1]/h2
Element /html/body/main/section/section[2]/div/div[1]/h2/strong[1]
Element /html/body/main/section/section[2]/div/div[1]/h2/strong[2]
Element /html/body/main/section/section[2]/div/div[2]/div/a[1]
Element /html/body/main/section/section[2]/div/div[2]/div/a[1]/span
Element /html/body/main/section/section[2]/div/div[2]/div/a[2]
Element /html/body/main/section/section[2]/div/div[2]/div/a[2]/span
Element /html/body/main/section/section[2]/div/div[2]/div/a[3]
Element /html/body/main/section/section[2]/div/div[2]/div/a[3]/span
Element /html/body/main/section/section[2]/div/div[2]/div/a[4]
Element /html/body/main/section/section[2]/div/div[2]/div/a[4]/span
Element /html/body/main/section/section[2]/div/div[2]/div/a[5]
Element /html/body/main/section/section[2]/div/div[2]/div/a[5]/span
Element /html/body/main/section/section[2]/div/div[2]/div/a[6]
Element /html/body/main/section/section[2]/div/div[2]/div/a[6]/span
Element /html/body/main/section/section[2]/div/div[2]/div/a[7]
Element /html/body/main/section/section[2]/div/div[2]/div/a[8]
Element /html/body/main/section/section[2]/div/div[2]/div/a[8]/span
Element /html/body/main/section/section[3]/div/section/ul/li[1]/figure/a
Element /html/body/main/section/section[3]/div/section/ul/li[1]/h3
Element /html/body/main/section/section[3]/div/section/ul/li[1]/h3/a
Element /html/body/main/section/section[3]/div/section/ul/li[1]/p[1]
Element /html/body/main/section/section[3]/div/section/ul/li[1]/p[2]/a
Element /html/body/main/section/section[3]/div/section/ul/li[1]/p[2]/a/span
Element /html/body/main/section/section[3]/div/section/ul/li[2]/figure/a
Element /html/body/main/section/section[3]/div/section/ul/li[2]/h3
Element /html/body/main/section/section[3]/div/section/ul/li[2]/h3/a
Element /html/body/main/section/section[3]/div/section/ul/li[2]/p[1]
Element /html/body/main/section/section[3]/div/section/ul/li[2]/p[2]/a
Element /html/body/main/section/section[3]/div/section/ul/li[2]/p[2]/a/span
Element /html/body/main/section/section[3]/div/section/ul/li[3]/figure/a
Element /html/body/main/section/section[3]/div/section/ul/li[3]/h3/a
Element /html/body/main/section/section[3]/div/section/ul/li[3]/p[2]
Element /html/body/main/section/section[3]/div/section/ul/li[3]/p[2]/a/span
Element /html/body/main/section/section[4]/div/div/div
Element /html/body/main/section/section[4]/div/div/div/div/div[1]/h2
Element /html/body/main/section/section[4]/div/div/div/div/div[1]/p
Element /html/body/main/section/section[4]/div/div/div/div/div[2]/div/div/div/div[1]/div/div[1]/a
Element /html/body/main/section/section[4]/div/div/div/div/div[2]/div/div/div/form/div[3]/div/div/p/a
Element /html/body/main/section/section[4]/div/div/div/div/div[2]/div/div/div/h4
Element /html/body/main/section/section[4]/div/div/div/div/div[3]/p
Element /html/body/main/section/section[4]/div/div/div/div/div[3]/p/a
Element /html/body/main/section/section[5]/div/div/p[2]/a
Element /html/body/main/section/section[5]/div/section/div[1]/button[1]
Element /html/body/main/section/section[5]/div/section/div[1]/button[2]
Element /html/body/main/section/section[5]/div/section/div[2]/ul/li[1]
Element /html/body/main/section/section[5]/div/section/div[2]/ul/li[1]/div/p/span[1]/strong/a
Element /html/body/main/section/section[5]/div/section/div[2]/ul/li[1]/figure/a
Element /html/body/main/section/section[5]/div/section/div[2]/ul/li[2]
Element /html/body/main/section/section[5]/div/section/div[2]/ul/li[2]/div/p/span[1]/strong/a
Element /html/body/main/section/section[5]/div/section/div[2]/ul/li[2]/figure/a
Element /html/body/main/section/section[5]/div/section/div[2]/ul/li[3]
Element /html/body/main/section/section[5]/div/section/div[2]/ul/li[3]/div/p/span[1]/strong/a
Element /html/body/main/section/section[5]/div/section/div[2]/ul/li[3]/figure/a
Element /html/body/noscript[1]
Element /html/head/link[13]
Element /html/head/link[14]
Element /html/head/link[15]
Element /html/head/link[16]