Accessibility digest

Contents

Synopsis
PageLucas Kunce;Democratic;Missouri
URLhttps://lucaskunce.com
Test date2024/09/22
Score3039
Configuration
Redirectionspermitted
Tool isolationno
Report format(s)standard
Requester
Devicedefault
Browser typewebkit
Reduced motionnot requested
Tested byTestaro, procedure senate2024
Scored byTestilo, procedure tsp50
Digested byTestilo, procedure tdp50
Full report 240915T1658-ikz-17.json

Introduction

How accessible is the Lucas Kunce;Democratic;Missouri web page at https://lucaskunce.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 3039, the sum of 630 for the count of issues, 1578 for specific issues, 0 for unclassified rule violations, 325 for tool-by-tool ratings, 444 for the count of violating elements, 0 for the page preventing tools from running, 62 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
ID not unique4.1.14208alfa:26, aslint:26, axe:5, htmlcs:13, ibm:13, nuVal:52, wax:14, qualWeb:0
line height low1.4.82200alfa:8, testaro:100
contrast poor1.4.34124axe:31, ibm:5, qualWeb:15, wave:28, alfa:0, aslint:0, htmlcs:0, wax:0
focus indication poor2.4.74108testaro:27, alfa:0, aslint:0
control not named4.1.2464wax:16, alfa:0, axe:0, htmlcs:0, ibm:0, qualWeb:0, wave:0
page content moves spontaneously2.2.2262testaro:1, aslint:0
type redundant1.3.1151nuVal:51
links named identically2.4.4248aslint:12, qualWeb:24, testaro:18
skip method missing or invalid2.4.1348wax:1, axe:0, ibm:0, wave:0
void element has trailing slash4.1140nuVal:40
error reference invalid3.3.1440qualWeb:10, ibm:0
target small2.5.5132alfa:16, testaro:32
attribute value invalid1.3.1432nuVal:8, ibm:0, wax:0
large visible-element count2.4131testaro:1
code obsolete4.1330ibm:10, nuVal:0
overflow hidden?1.4.4130qualWeb:30
link indication poor1.3.3228testaro:14, alfa:0, axe:0
element closure invalid4.1.1327nuVal:9
box size absolute1.4.4327qualWeb:9
text contrast not testable1.4.3124alfa:24, htmlcs:19, aslint:0
color missing1.4.3420qualWeb:5
text contrast improvable1.4.6119alfa:2, aslint:19, axe:11, htmlcs:2, qualWeb:17, wax:1
invalid landmark child of navigation role1.3.6416aslint:4
item makes testing inconclusive4.1115alfa:15
all-capital text3.1.5115alfa:1, aslint:15, testaro:3, ed11y:0
tab-opening link action unstated?3.2.5113aslint:13, htmlcs:13, testaro:13
CSS invalid4.1312nuVal:4
autocomplete missing1.3.5412testaro:6
inconsistent heading, link, or button styles3.2.4112testaro:12
title attribute invalid1.3.1412testaro:3
fieldset missing?1.3.1110aslint:10, htmlcs:0, wax:0
labeling risky3.3.2110aslint:10
element referenced by multiple labels1.3.1110aslint:10, axe:10, ibm:5, wave:10
label location dubious3.3.2110ibm:10, qualWeb:5, aslint:0
landmarks not distinctly named1.3.639axe:2, ibm:3, wax:2
asides not distinctly named1.3.639ibm:3
navigations not distinctly named1.3.639ibm:3
font size absolute1.4.428alfa:4, qualWeb:0
no role-required name4.1.248ibm:2, wax:0
target empty1.3.148nuVal:2
visible label not in name2.5.336alfa:2, axe:2, htmlcs:2, ibm:2, qualWeb:2
attribute obsolete4.136aslint:1, nuVal:2, htmlcs:0, ibm:0, testaro:0, wave:0
links dubiously share name2.4.416axe:6
role redundant4.1.216ibm:3, nuVal:6
meta invalid1.3.136nuVal:2
element in head invalid4.1.136testaro:2, aslint:0
hover indication poor3.3.236testaro:2
semantic properties represented with styles1.3.126wax:3, htmlcs:0
heading structure illogical1.3.124aslint:2, htmlcs:1
operable element not focusable2.1.144testaro:1
z-index not zero1.414testaro:4
complementary not named1.3.613ibm:3
image dubiously named1.1.113qualWeb:3, aslint:0, wave:0
element beyond display when focused1.4.1033testaro:1
role assigned instead of implicit4.1.213testaro:3
heading level skipped1.3.122alfa:1, axe:1, wave:1, ed11y:0, wax:0
line height absolute1.4.1222alfa:1
nav links not list1.3.122htmlcs:1
duplicate attribute4.1.122nuVal:1, testaro:0
image link text suspect2.4.412qualWeb:2
noscript element not equivalent?4.112wave:2
heading names repeated1.3.122wax:1, aslint:0, testaro:0
audio or video alternatives missing?1.2.211wave:1

Itemized issues

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

Issue: ID not unique

Impact: User may be pointed to the wrong item

WCAG: 4.1.1

Score: 208

Elements

Violations of alfa rules

Rule r3

Description: Element id attribute value is not unique

Count of instances: 26

Violations of aslint rules

Rule duplicated_id_attribute

Description: Element id attribute value is not unique

Count of instances: 26

Violations of axe rules

Rule duplicate-id-aria

Description: id attribute used in ARIA or in a label has a value that is not unique

Count of instances: 5

Violations of htmlcs rules

Rule AAA.4_1_1.F77

Description: Duplicate id attribute value

Count of instances: 13

Violations of ibm rules

Rule element_id_unique

Description: Element has an id attribute value that is already in use

Count of instances: 13

Violations of nuVal rules

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

Description: Duplicate id

Count of instances: 52

Violations of wax rules

Rule ^Duplicate id attribute value .+ found on the web page.+$

Description: id attribute value is not unique

Count of instances: 14

Issue: line height low

Impact: Text is difficult to read

WCAG: 1.4.8

Score: 200

Elements

Violations of alfa rules

Rule r73

Description: Text line height is not at least 1.5

Count of instances: 8

Violations of testaro rules

Rule lineHeight

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

Count of instances: 100

Issue: contrast poor

Impact: Content is difficult to understand

WCAG: 1.4.3

Score: 124

Elements

Violations of axe rules

Rule color-contrast

Description: Element has insufficient color contrast

Count of instances: 31

Violations of ibm rules

Rule text_contrast_sufficient

Description: Text has a contrast with its background less than the WCAG AA minimum for its size and weight

Count of instances: 5

Violations of qualWeb rules

Rule QW-ACT-R37

Description: Text has less than the minimum contrast

Count of instances: 15

Violations of wave rules

Rule contrast

Description: Very low contrast

Count of instances: 28

Issue: focus indication poor

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

WCAG: 2.4.7

Score: 108

Elements

Violations of testaro rules

Rule focInd

Description: Focused element displays a nonstandard or no focus indicator

Count of instances: 27

Issue: control not named

Impact: User cannot get help on how to operate a form item

WCAG: 4.1.2

Score: 64

Elements

None identified

Violations of wax rules

Rule Ensure form elements have associated labels.

Description: Form control element has no label

Count of instances: 16

Issue: page content moves spontaneously

Impact: Motion-sensitive user may suffer harm

WCAG: 2.2.2

Score: 62

Elements

Violations of testaro rules

Rule motion

Description: Change of visible content not requested by user

Count of instances: 1

Issue: type redundant

Impact: Document includes unnecessary code

WCAG: 1.3.1

Score: 51

Elements

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: 43

Rule The type attribute for the style element is not needed and should be omitted.

Description: type attribute is unnecessary for a style element

Count of instances: 8

Issue: links named identically

Impact: User cannot get help differentiating links

WCAG: 2.4.4

Score: 48

Elements

Violations of aslint rules

Rule links_same_content_different_url

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

Count of instances: 12

Violations of qualWeb rules

Rule QW-ACT-R9

Description: Links with identical accessible names have different purposes

Count of instances: 12

Rule QW-ACT-R44

Description: Links with identical accessible names and context serve different purposes

Count of instances: 12

Violations of testaro rules

Rule linkAmb

Description: Links with the same text content have different destinations

Count of instances: 18

Issue: skip method missing or invalid

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

WCAG: 2.4.1

Score: 48

Elements

Violations of wax rules

Rule Ensure that any common navigation elements can be bypassed; for instance, by use of skip links, header elements, or ARIA landmark roles.

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

Count of instances: 1

Issue: void element has trailing slash

Impact: Document contains invalid code

WCAG: 4.1

Score: 40

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: 40

Issue: error reference invalid

Impact: User cannot correct a form error

WCAG: 3.3.1

Score: 40

Elements

Violations of qualWeb rules

Rule QW-ACT-R41

Description: Error message describes no invalid form field value

Count of instances: 10

Issue: target small

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

WCAG: 2.5.5

Score: 32

Elements

Violations of alfa rules

Rule r111

Description: Target size is suboptimal

Count of instances: 16

Violations of testaro rules

Rule targetSize

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

Count of instances: 32

Issue: attribute value invalid

Impact: Item behaves improperly

WCAG: 1.3.1

Score: 32

Elements

Violations of nuVal rules

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

Description: Attribute on this element has an invalid value

Count of instances: 8

Issue: large visible-element count

Impact: User cannot easily find items in the document

WCAG: 2.4

Score: 31

Elements

Violations of testaro rules

Rule bulk

Description: Page contains many visible elements

Count of instances: 1

Issue: code obsolete

Impact: Document contains code that is no longer standard

WCAG: 4.1

Score: 30

Elements

Violations of ibm rules

Rule element_attribute_deprecated

Description: Element or attribute is obsolete

Count of instances: 10

Issue: overflow hidden?

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

WCAG: 1.4.4

Score: 30

Elements

Violations of qualWeb rules

Rule QW-ACT-R40

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

Count of instances: 30

Issue: link indication poor

Impact: User cannot differentiate a link from plain text

WCAG: 1.3.3

Score: 28

Elements

Violations of testaro rules

Rule linkUl

Description: Inline links are not underlined

Count of instances: 14

Issue: element closure invalid

Impact: Document contains invalid code

WCAG: 4.1.1

Score: 27

Elements

Violations of nuVal rules

Rule ^End tag [a-z]+.$

Description: Closing tag of an ineligible element

Count of instances: 9

Issue: box size absolute

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

WCAG: 1.4.4

Score: 27

Elements

Violations of qualWeb rules

Rule QW-BP15

Description: Element width is specified in an absolute value

Count of instances: 9

Issue: text contrast not testable

Impact: Text may be difficult to read

WCAG: 1.4.3

Score: 24

Elements

Violations of alfa rules

Rule cantTellTextContrast

Description: Test of text contrast could not give a conclusive result

Count of instances: 24

Violations of htmlcs rules

Rule AAA.1_4_3_F24.F24.FGColour

Description: Inline foreground color may lack a complementary background 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: 14

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: 3

Issue: color missing

Impact: Content is impossible to perceive under some conditions

WCAG: 1.4.3

Score: 20

Elements

Violations of qualWeb rules

Rule QW-WCAG-T31

Description: Foreground or background color is specified but not both

Count of instances: 5

Issue: text contrast improvable

Impact: Content is not easy to understand

WCAG: 1.4.6

Score: 19

Elements

Violations of alfa rules

Rule r66

Description: Text contrast less than AAA requires

Count of instances: 2

Violations of aslint rules

Rule color_contrast_aaa7

Description: Text has contrast less than 7:1

Count of instances: 18

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: 11

Violations of htmlcs rules

Rule AAA.1_4_6.G17.Fail

Description: Text has insufficient contrast

Count of instances: 2

Violations of qualWeb rules

Rule QW-ACT-R76

Description: Text has less than the enhanced minimum contrast

Count of instances: 17

Violations of wax rules

Rule ^This element has insufficient contrast at this conformance level. Expected a contrast ratio of at least 7:1, but text in this element has a contrast ratio of .+. Recommendation: change .+ to #.+$

Description: Contrast between the element text and its background is less than 7:1

Count of instances: 1

Issue: invalid landmark child of navigation role

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

WCAG: 1.3.6

Score: 16

Elements

Violations of aslint rules

Rule navigation_landmark_restrictions

Description: Element with a navigation role contains a landmark other than region and search

Count of instances: 4

Issue: item makes testing inconclusive

Impact: Item prevents a conclusive accessibility test

WCAG: 4.1

Score: 15

Elements

Violations of alfa rules

Rule cantTell

Description: Test could not give a conclusive result

Count of instances: 15

Issue: all-capital text

Impact: Text is difficult to read

WCAG: 3.1.5

Score: 15

Elements

Violations of alfa rules

Rule r72

Description: Paragraph text is uppercased

Count of instances: 1

Violations of aslint rules

Rule capital_letters_words

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

Count of instances: 15

Violations of testaro rules

Rule allCaps

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

Count of instances: 3

Issue: tab-opening link action unstated?

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

WCAG: 3.2.5

Score: 13

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: 13

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: 13

Violations of testaro rules

Rule linkExt

Description: Link opens a new window or tab

Count of instances: 13

Issue: CSS invalid

Impact: Document cannot be properly displayed

WCAG: 4.1

Score: 12

Elements

None identified

Violations of nuVal rules

Rule CSS: Parse Error.

Description: Invalid CSS

Count of instances: 4

Issue: autocomplete missing

Impact: User cannot get help entering personal information in a form

WCAG: 1.3.5

Score: 12

Elements

Violations of testaro rules

Rule autocomplete

Description: Name or email input is missing its required autocomplete attribute

Count of instances: 6

Issue: inconsistent heading, link, or button styles

Impact: User cannot easily distinguish items of different types

WCAG: 3.2.4

Score: 12

Elements

None identified

Violations of testaro rules

Rule styleDiff

Description: Heading, link, and button style inconsistencies

Count of instances: 12

Issue: title attribute invalid

Impact: User cannot hover to get help explaining an item

WCAG: 1.3.1

Score: 12

Elements

Violations of testaro rules

Rule titledEl

Description: title attribute belongs to an inappropriate element

Count of instances: 3

Issue: fieldset missing?

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

WCAG: 1.3.1

Score: 10

Elements

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: 10

Issue: labeling risky

Impact: User may misunderstand a form control

WCAG: 3.3.2

Score: 10

Elements

Violations of aslint rules

Rule missing_labelN

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

Count of instances: 10

Issue: element referenced by multiple labels

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

WCAG: 1.3.1

Score: 10

Elements

Violations of aslint rules

Rule duplicated_for_attribute

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

Count of instances: 10

Violations of axe rules

Rule form-field-multiple-labels

Description: Form field has multiple label elements

Count of instances: 10

Violations of ibm rules

Rule form_label_unique

Description: Form control has more than one label

Count of instances: 5

Violations of wave rules

Rule label_multiple

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

Count of instances: 10

Issue: label location dubious

Impact: User may fail to notice the explanation of an item in a form

WCAG: 3.3.2

Score: 10

Elements

Violations of ibm rules

Rule input_label_before

Description: Label text is after its text input or select element

Count of instances: 10

Violations of qualWeb rules

Rule QW-WCAG-T17

Description: label not positioned to maximize the predictability of the relationship

Count of instances: 5

Issue: landmarks not distinctly named

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

WCAG: 1.3.6

Score: 9

Elements

Violations of axe rules

Rule landmark-unique

Description: Landmark has a role and an accessible name that are identical to another

Count of instances: 2

Violations of ibm rules

Rule aria_landmark_name_unique

Description: Multiple landmarks with the same parent region are not distinguished from one another

Count of instances: 3

Violations of wax rules

Rule Provide unique role or role/label/title combinations for landmarks.

Description: Landmark is indistinguishable from another by role, label, or title

Count of instances: 2

Issue: asides not distinctly named

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

WCAG: 1.3.6

Score: 9

Elements

Violations of ibm rules

Rule aria_complementary_label_unique

Description: Multiple elements with a complementary role have no unique labels

Count of instances: 3

Issue: navigations not distinctly named

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

WCAG: 1.3.6

Score: 9

Elements

Violations of ibm rules

Rule aria_navigation_label_unique

Description: Multiple elements with the navigation role do not have unique labels

Count of instances: 3

Issue: font size absolute

Impact: User cannot adjust the text size for readability

WCAG: 1.4.4

Score: 8

Elements

Violations of alfa rules

Rule r74

Description: Paragraph text has an absolute font size

Count of instances: 4

Issue: no role-required name

Impact: User cannot get help understanding an item

WCAG: 4.1.2

Score: 8

Elements

Violations of ibm rules

Rule aria_accessiblename_exists

Description: Element has no accessible name, although its role requires one

Count of instances: 2

Issue: target empty

Impact: Item is displayed improperly

WCAG: 1.3.1

Score: 8

Elements

Violations of nuVal rules

Rule Bad value for attribute target on element a: Browsing context name must be at least one character long.

Description: target attribute on an a element is empty

Count of instances: 2

Issue: visible label not in name

Impact: User cannot get help choosing a form control to operate

WCAG: 2.5.3

Score: 6

Elements

Violations of alfa rules

Rule r14

Description: Visible label is not in the accessible name

Count of instances: 2

Violations of axe rules

Rule label-content-name-mismatch

Description: Element visible text is not part of its accessible name

Count of instances: 2

Violations of htmlcs rules

Rule AAA.2_5_3.F96

Description: Visible label is not in the accessible name

Count of instances: 2

Violations of ibm rules

Rule label_name_visible

Description: Accessible name does not match or contain the visible label text

Count of instances: 2

Violations of qualWeb rules

Rule QW-ACT-R30

Description: Visible label is not part of the accessible name

Count of instances: 2

Issue: attribute obsolete

Impact: Document includes obsolete code that the browser may fail to process

WCAG: 4.1

Score: 6

Elements

Violations of aslint rules

Rule obsolete_html_attributes

Description: Element has an obsolete attribute

Count of instances: 1

Violations of nuVal rules

Rule ^The .+ attribute on the .+ element is obsolete.*$

Description: Attribute is obsolete on its element

Count of instances: 2

Issue: links dubiously share name

Impact: User may be unable to get help differentiating links

WCAG: 2.4.4

Score: 6

Elements

Violations of axe rules

Rule identical-links-same-purpose

Description: Links with the same accessible name may serve dissimilar purposes

Count of instances: 6

Issue: role redundant

Impact: Document includes unnecessary code

WCAG: 4.1.2

Score: 6

Elements

Violations of ibm rules

Rule aria_role_redundant

Description: Explicitly assigned ARIA role is redundant with the implicit role of the element

Count of instances: 3

Violations of nuVal rules

Rule ^The .+ role is unnecessary for element .+$

Description: explicit role is redundant for its element

Count of instances: 6

Issue: meta invalid

Impact: Document fails to include needed data

WCAG: 1.3.1

Score: 6

Elements

None identified

Violations of nuVal rules

Rule A meta element with an http-equiv attribute whose value is X-UA-Compatible must have a content attribute with the value IE=edge.

Description: Element with http-equiv="X-UA-Compatible" has no content="IE=edge"

Count of instances: 2

Issue: element in head invalid

Impact: Browser processes the document improperly

WCAG: 4.1.1

Score: 6

Elements

None identified

Violations of testaro rules

Rule headEl

Description: Elements in the head are not allowed there

Count of instances: 2

Issue: hover indication poor

Impact: User cannot explore the document reliably with a mouse

WCAG: 3.3.2

Score: 6

Elements

Violations of testaro rules

Rule hovInd

Description: Hovering is unclearly indicated

Count of instances: 2

Issue: semantic properties represented with styles

Impact: User cannot get help to fully understand the text

WCAG: 1.3.1

Score: 6

Elements

None identified

Violations of wax rules

Rule Semantic markup should be used to mark emphasised or special text so that it can be programmatically determined.

Description: Special text is designated with styles instead of semantically

Count of instances: 3

Issue: heading structure illogical

Impact: Helper misdescribes the document

WCAG: 1.3.1

Score: 4

Elements

Violations of aslint rules

Rule headings_hierarchy

Description: Heading level is illogical in its context

Count of instances: 2

Violations of htmlcs rules

Rule AAA.1_3_1_AAA.G141

Description: Heading level is incorrect

Count of instances: 1

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: 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: complementary not named

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

WCAG: 1.3.6

Score: 3

Elements

Violations of ibm rules

Rule aria_complementary_labelled

Description: Element with a complementary role has no label

Count of instances: 3

Issue: image dubiously named

Impact: Helper may describe an image inadequately

WCAG: 1.1.1

Score: 3

Elements

Violations of qualWeb rules

Rule QW-WCAG-T8

Description: Text alternative is suspect

Count of instances: 3

Issue: element beyond display when focused

Impact: Keyboard-only user cannot navigate properly to the operable items

WCAG: 1.4.10

Score: 3

Elements

Violations of testaro rules

Rule focVis

Description: Element when focused is off the display

Count of instances: 1

Issue: role assigned instead of implicit

Impact: User may misunderstand the purpose of an item

WCAG: 4.1.2

Score: 3

Elements

Violations of testaro rules

Rule role

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

Count of instances: 3

Issue: heading level skipped

Impact: Helper misdescribes the document

WCAG: 1.3.1

Score: 2

Elements

Violations of alfa rules

Rule r53

Description: Heading skips one or more levels

Count of instances: 1

Violations of axe rules

Rule heading-order

Description: Heading levels do not increase by only one or their order is ambiguous

Count of instances: 1

Violations of wave rules

Rule heading_skipped

Description: Skipped heading level

Count of instances: 1

Issue: line height absolute

Impact: User cannot adjust the line height of text for readability

WCAG: 1.4.12

Score: 2

Elements

Violations of alfa rules

Rule r80

Description: Paragraph text has an absolute line height

Count of instances: 1

Issue: nav links not list

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

WCAG: 1.3.1

Score: 2

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: 1

Issue: duplicate attribute

Impact: Browser processes the document improperly

WCAG: 4.1.1

Score: 2

Elements

None identified

Violations of nuVal rules

Rule ^Duplicate attribute.*$

Description: Source code of the element contains 2 or more of the same attribute

Count of instances: 1

Issue: image link text suspect

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

WCAG: 2.4.4

Score: 2

Elements

Violations of qualWeb rules

Rule QW-WCAG-T10

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

Count of instances: 2

Issue: noscript element not equivalent?

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

WCAG: 4.1

Score: 2

Elements

Violations of wave rules

Rule noscript

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

Count of instances: 2

Issue: heading names repeated

Impact: User cannot differentiate parts of the document

WCAG: 1.3.1

Score: 2

Elements

Violations of wax rules

Rule ^The heading structure is not logically nested. This h. element should be an h. to be properly nested.+$

Description: Heading level is illogical

Count of instances: 1

Issue: audio or video alternatives missing?

Impact: User may be unable to get help reading video content as text

WCAG: 1.2.2

Score: 1

Elements

Violations of wave rules

Rule youtube_video

Description: YouTube video may have no or incorrect captions

Count of instances: 1

Elements with issues

Elements exhibiting issues:

Element /
Element /html
Element /html/body
Element /html/body/aside
Element /html/body/aside/button
Element /html/body/aside/button/span
Element /html/body/aside/div
Element /html/body/aside/div/div
Element /html/body/aside/div/div/nav
Element /html/body/aside/div/div/nav/a[1]
Element /html/body/aside/div/div/nav/a[2]
Element /html/body/aside/div/div/nav/a[3]
Element /html/body/aside/div/div/nav/a[4]
Element /html/body/aside/div/div/nav/a[5]
Element /html/body/aside/div/div/nav/a[6]
Element /html/body/aside/div/div/p
Element /html/body/aside/div/header/div
Element /html/body/aside/div/header/div/p
Element /html/body/aside/div/header/h1
Element /html/body/div
Element /html/body/div/aside[1]
Element /html/body/div/aside[1]/div
Element /html/body/div/aside[1]/div/div[1]
Element /html/body/div/aside[1]/div/div[1]/div
Element /html/body/div/aside[1]/div/div[1]/div/p
Element /html/body/div/aside[1]/div/div[1]/header
Element /html/body/div/aside[1]/div/div[1]/header/h1
Element /html/body/div/aside[1]/div/div[2]/div
Element /html/body/div/aside[1]/div/div[2]/div/form
Element /html/body/div/aside[1]/div/div[2]/div/form/button
Element /html/body/div/aside[1]/div/div[2]/div/form/div[1]
Element /html/body/div/aside[1]/div/div[2]/div/form/div[1]/div/input
Element /html/body/div/aside[1]/div/div[2]/div/form/div[1]/div/label
Element /html/body/div/aside[1]/div/div[2]/div/form/div[2]
Element /html/body/div/aside[1]/div/div[2]/div/form/div[2]/div/input
Element /html/body/div/aside[1]/div/div[2]/div/form/div[2]/div/label
Element /html/body/div/aside[1]/div/div[2]/div/form/div[3]
Element /html/body/div/aside[1]/div/div[2]/div/form/div[3]/div
Element /html/body/div/aside[1]/div/div[2]/div/form/div[3]/div/input
Element /html/body/div/aside[1]/div/div[2]/div/form/div[3]/div/label
Element /html/body/div/aside[1]/div/div[2]/div/form/div[3]/div/label/span
Element /html/body/div/aside[1]/div/div[2]/div/form/div[4]
Element /html/body/div/aside[1]/div/div[2]/div/form/div[4]/div/input
Element /html/body/div/aside[1]/div/div[2]/div/form/div[4]/div/label
Element /html/body/div/aside[1]/div/div[2]/div/form/div[4]/div/label/span
Element /html/body/div/aside[1]/div/div[2]/div/form/div[5]
Element /html/body/div/aside[1]/div/div[2]/div/form/div[5]/div[1]
Element /html/body/div/aside[1]/div/div[2]/div/form/div[5]/div[1]/input
Element /html/body/div/aside[1]/div/div[2]/div/form/div[5]/div[1]/label
Element /html/body/div/aside[1]/div/div[2]/div/form/div[5]/div[2]
Element /html/body/div/aside[1]/div/div[2]/div/form/div[5]/div[2]/a
Element /html/body/div/aside[1]/div/div[2]/div/form/div[5]/div[2]/span[1]
Element /html/body/div/aside[1]/div/div[2]/div/form/div[5]/div[2]/span[3]
Element /html/body/div/aside[1]/div/div[2]/div/form/input[10]
Element /html/body/div/aside[1]/div/div[2]/div/form/input[11]
Element /html/body/div/aside[1]/div/div[2]/div/form/input[1]
Element /html/body/div/aside[1]/div/div[2]/div/form/input[2]
Element /html/body/div/aside[1]/div/div[2]/div/form/input[3]
Element /html/body/div/aside[1]/div/div[2]/div/form/input[4]
Element /html/body/div/aside[1]/div/div[2]/div/form/input[5]
Element /html/body/div/aside[1]/div/div[2]/div/form/input[6]
Element /html/body/div/aside[1]/div/div[2]/div/form/input[7]
Element /html/body/div/aside[1]/div/div[2]/div/form/input[8]
Element /html/body/div/aside[1]/div/div[2]/div/form/input[9]
Element /html/body/div/aside[2]
Element /html/body/div/aside[2]/div/header/div/p
Element /html/body/div/aside[2]/div/header/h1
Element /html/body/div/aside[2]/div/nav
Element /html/body/div/aside[2]/div/nav/a[1]
Element /html/body/div/aside[2]/div/nav/a[2]
Element /html/body/div/aside[2]/div/nav/a[3]
Element /html/body/div/aside[2]/div/nav/a[4]
Element /html/body/div/aside[2]/div/nav/a[5]
Element /html/body/div/aside[2]/div/nav/a[6]
Element /html/body/div/aside[2]/div/nav/p
Element /html/body/div/footer/nav
Element /html/body/div/footer/nav/div[1]/div/ul/li[1]/a
Element /html/body/div/footer/nav/div[1]/div/ul/li[2]/a
Element /html/body/div/footer/nav/div[1]/div/ul/li[3]/a
Element /html/body/div/footer/nav/div[1]/div/ul/li[4]/a
Element /html/body/div/footer/nav/div[1]/div/ul/li[5]/a
Element /html/body/div/footer/nav/div[1]/div/ul/li[6]/a
Element /html/body/div/footer/nav/div[1]/h1/a
Element /html/body/div/footer/nav/div[1]/h1/a/img
Element /html/body/div/footer/nav/div[1]/h1/a/span
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[1]/a
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[1]/a/span
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[1]/a/svg
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[2]/a
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[2]/a/span
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[2]/a/svg
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[3]/a
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[3]/a/span
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[3]/a/svg
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[4]/a
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[4]/a/span
Element /html/body/div/footer/nav/div[2]/div[1]/div/ul/li[4]/a/svg
Element /html/body/div/footer/nav/div[2]/div[1]/h3
Element /html/body/div/footer/nav/div[2]/div[2]
Element /html/body/div/footer/nav/div[2]/div[2]/a[1]
Element /html/body/div/footer/nav/div[2]/div[2]/a[2]
Element /html/body/div/footer/nav/div[3]/div/div/ul/li/a
Element /html/body/div/footer/nav/div[3]/div/p
Element /html/body/div/footer/nav/div[3]/div/p/a
Element /html/body/div/footer/nav/div[3]/p
Element /html/body/div/footer/nav/p
Element /html/body/div/header
Element /html/body/div/header/nav
Element /html/body/div/header/nav/button
Element /html/body/div/header/nav/button/span
Element /html/body/div/header/nav/div
Element /html/body/div/header/nav/div/div
Element /html/body/div/header/nav/div/div/div
Element /html/body/div/header/nav/div/div/div/ul
Element /html/body/div/header/nav/div/div/div/ul/li[1]
Element /html/body/div/header/nav/div/div/div/ul/li[1]/a
Element /html/body/div/header/nav/div/div/div/ul/li[2]
Element /html/body/div/header/nav/div/div/div/ul/li[2]/a
Element /html/body/div/header/nav/div/div/div/ul/li[3]
Element /html/body/div/header/nav/div/div/div/ul/li[3]/a
Element /html/body/div/header/nav/div/div/div/ul/li[4]
Element /html/body/div/header/nav/div/div/div/ul/li[4]/a
Element /html/body/div/header/nav/div/div/div/ul/li[5]
Element /html/body/div/header/nav/div/div/div/ul/li[5]/a
Element /html/body/div/header/nav/div/div/div/ul/li[6]
Element /html/body/div/header/nav/div/div/div/ul/li[6]/a
Element /html/body/div/header/nav/h1
Element /html/body/div/header/nav/h1/a
Element /html/body/div/header/nav/h1/a/img
Element /html/body/div/header/nav/h1/a/span
Element /html/body/div/main
Element /html/body/div/main/div[1]
Element /html/body/div/main/div[1]/div/div[1]/div/iframe
Element /html/body/div/main/div[1]/div/div[2]
Element /html/body/div/main/div[1]/div/div[2]/div
Element /html/body/div/main/div[1]/div/div[2]/div/form
Element /html/body/div/main/div[1]/div/div[2]/div/form/button
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[1]
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[1]/div
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[1]/div/input
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[1]/div/label
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[2]
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[2]/div
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[2]/div/input
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[2]/div/label
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[3]
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[3]/div[1]/input
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[3]/div[1]/label
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[3]/div[1]/label/span
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[4]
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[4]/div/input
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[4]/div/label
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[4]/div/label/span
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[5]
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[5]/div[1]
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[5]/div[1]/input
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[5]/div[1]/label
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[5]/div[2]
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[5]/div[2]/a
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[5]/div[2]/a/span
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[5]/div[2]/span[1]
Element /html/body/div/main/div[1]/div/div[2]/div/form/div[5]/div[2]/span[3]
Element /html/body/div/main/div[1]/div/div[2]/div/form/input[10]
Element /html/body/div/main/div[1]/div/div[2]/div/form/input[11]
Element /html/body/div/main/div[1]/div/div[2]/div/form/input[1]
Element /html/body/div/main/div[1]/div/div[2]/div/form/input[2]
Element /html/body/div/main/div[1]/div/div[2]/div/form/input[3]
Element /html/body/div/main/div[1]/div/div[2]/div/form/input[4]
Element /html/body/div/main/div[1]/div/div[2]/div/form/input[5]
Element /html/body/div/main/div[1]/div/div[2]/div/form/input[6]
Element /html/body/div/main/div[1]/div/div[2]/div/form/input[7]
Element /html/body/div/main/div[1]/div/div[2]/div/form/input[8]
Element /html/body/div/main/div[1]/div/div[2]/div/form/input[9]
Element /html/body/div/main/div[1]/div/div[2]/h2
Element /html/body/div/main/div[2]
Element /html/body/div/main/div[2]/div
Element /html/body/div/main/div[2]/div/div[1]
Element /html/body/div/main/div[2]/div/div[1]/a
Element /html/body/div/main/div[2]/div/div[1]/div
Element /html/body/div/main/div[2]/div/div[1]/div/p
Element /html/body/div/main/div[2]/div/div[1]/h3
Element /html/body/div/main/div[2]/div/div[2]/img
Element /html/body/div/nav
Element /html/body/div/nav/div
Element /html/body/div/nav/div/div
Element /html/body/div/nav/div/div/ul
Element /html/body/div/nav/div/div/ul/li[1]
Element /html/body/div/nav/div/div/ul/li[1]/a
Element /html/body/div/nav/div/div/ul/li[1]/a/span
Element /html/body/div/nav/div/div/ul/li[1]/a/svg
Element /html/body/div/nav/div/div/ul/li[2]
Element /html/body/div/nav/div/div/ul/li[2]/a
Element /html/body/div/nav/div/div/ul/li[2]/a/span
Element /html/body/div/nav/div/div/ul/li[2]/a/svg
Element /html/body/div/nav/div/div/ul/li[3]/a
Element /html/body/div/nav/div/div/ul/li[3]/a/span
Element /html/body/div/nav/div/div/ul/li[3]/a/svg
Element /html/body/div/nav/div/div/ul/li[4]
Element /html/body/div/nav/div/div/ul/li[4]/a
Element /html/body/div/nav/div/div/ul/li[4]/a/span
Element /html/body/div/nav/div/div/ul/li[4]/a/svg
Element /html/body/noscript[1]
Element /html/body/noscript[2]
Element /html/head
Element /html/head/link[12]
Element /html/head/link[13]
Element /html/head/link[14]
Element /html/head/meta[2]
Element /html/head/script[4]
Element /html[1]/body[1]/div[1]/footer[1]/nav[1]/div[2]/div[1]/div[1]/ul[1]/li[1]/a[1]/svg[1]
Element /html[1]/body[1]/div[1]/footer[1]/nav[1]/div[2]/div[1]/div[1]/ul[1]/li[2]/a[1]/svg[1]
Element /html[1]/body[1]/div[1]/footer[1]/nav[1]/div[2]/div[1]/div[1]/ul[1]/li[3]/a[1]/svg[1]
Element /html[1]/body[1]/div[1]/footer[1]/nav[1]/div[2]/div[1]/div[1]/ul[1]/li[4]/a[1]/svg[1]
Element /html[1]/body[1]/div[1]/nav[1]/div[1]/div[1]/ul[1]/li[1]/a[1]/svg[1]
Element /html[1]/body[1]/div[1]/nav[1]/div[1]/div[1]/ul[1]/li[2]/a[1]/svg[1]
Element /html[1]/body[1]/div[1]/nav[1]/div[1]/div[1]/ul[1]/li[3]/a[1]/svg[1]
Element /html[1]/body[1]/div[1]/nav[1]/div[1]/div[1]/ul[1]/li[4]/a[1]/svg[1]