CINXE.COM
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/styles.fc3baab3d7de67a53bc0.css" id="gatsby-global-css">.page-glossary{margin:2rem 0;padding:0 3rem;width:100%}.page-glossary h1{border-bottom:1px solid #f3f4f6;padding:2rem 0;margin:0;text-decoration:none}.page-glossary h1>p{margin:0}.page-glossary h2:hover,.page-glossary h3:hover,.page-glossary h4:hover,.page-glossary h5:hover,.page-glossary h6:hover{text-decoration:underline}.page-glossary .listing>article{padding:1rem;position:relative;background-color:rgba(243,244,246,.5);box-shadow:0 0 12px rgba(0,0,0,.2);margin-bottom:1.5rem;display:flex}.page-glossary .listing>article:hover{outline:2px solid #2aabff}.page-glossary .listing>article h2,.page-glossary .listing>article h3{margin:0}.page-glossary .listing>article i{font-family:Courier New,Courier,monospace}.page-glossary .listing>article>section{flex:1 1;padding-right:.5rem}.page-glossary .listing>article>div.used-rules{padding:1.5rem 1.5rem 1.5rem 0;width:30%}.page-glossary .listing>article>div.used-rules ul{margin:0;padding:0;list-style:none}.page-glossary .listing>article>div.used-rules a{display:block;text-transform:capitalize}.page-glossary .listing>article>div.used-rules a p{margin:.25rem}.page-glossary .listing.md>article,.page-glossary .listing.sm>article{flex-direction:column}.page-glossary .listing.md>article>aside,.page-glossary .listing.md>article>div.used-rules,.page-glossary .listing.sm>article>aside,.page-glossary .listing.sm>article>div.used-rules{width:100%!important}.appLogo>a{color:#2aabff;text-decoration:none}.appLogo>a>h1{padding:3rem 1rem;margin:0;color:#2aabff;font-weight:bolder}aside.navigation{height:100%;display:flex;flex-direction:column;flex-grow:1;overflow-y:auto;flex-shrink:0;background-color:#091832;color:#fefefe;width:225px;position:relative;left:0;box-shadow:2px 0 5px 2px rgba(0,0,0,.25)}aside.navigation.hide{left:-225px;position:absolute}aside.navigation>div.logo{flex-shrink:0}aside.navigation>nav>ul{margin:0;list-style:none;padding:0 0 0 1rem}aside.navigation>nav>ul>li{transition:all ease}aside.navigation>nav>ul>li a,aside.navigation>nav>ul>li p{font-family:Roboto,sans-serif;color:#fefefe;text-decoration:none;margin:1rem 0;display:block;text-transform:capitalize;font-size:.83em;position:relative}aside.navigation>nav>ul>li a.active,aside.navigation>nav>ul>li a:hover,aside.navigation>nav>ul>li p.active,aside.navigation>nav>ul>li p:hover{color:#2aabff}aside.navigation>nav>ul>li a.active:after,aside.navigation>nav>ul>li p.active:after{opacity:1}aside.navigation>nav>ul>li a.parent-item,aside.navigation>nav>ul>li p.parent-item{color:currentColor}aside.navigation>nav>ul>li a:after,aside.navigation>nav>ul>li p:after{content:"";right:0;top:-10px;height:30px;position:absolute;width:7px;background-color:#2aabff;opacity:0}aside.navigation>nav>ul>li>ul{margin:0;padding:0;list-style:none;-webkit-padding-start:1rem;padding-inline-start:1rem;-webkit-padding-end:0;padding-inline-end:0}aside.navigation>nav>ul>li>ul>li>a{text-transform:capitalize;padding-right:1rem}header.appHeader{color:#091832;width:auto;box-shadow:1px 1px 5px rgba(0,0,0,.25);display:flex;align-items:center;z-index:1}header.appHeader div.name{margin:0 1rem;flex:1 1}header.appHeader div.logos{padding:0 1rem;display:flex;flex-direction:row;justify-content:center}header.appHeader div.logos a.logo-github svg{color:inherit;vertical-align:middle}header.appHeader div.logos a.logo-github svg path{fill:#091832}header.appHeader div.logos a.logo-github:hover svg path{fill:#005790}footer.appFooter{color:#091832;width:auto;box-shadow:1px 1px 5px rgba(0,0,0,.25);display:flex;font-size:85%;align-items:center;z-index:1}footer.appFooter a{color:#2aabff}footer.appFooter h2{padding:.75rem 0;margin:0;color:#2aabff;font-weight:bolder;width:150px}footer.appFooter div.tags{padding:0 1rem;flex:1 1}footer.appFooter div.tags p.tag{font-size:75%;font-style:italic;opacity:.9}footer.appFooter div.tags p.tag a{color:#005790}footer.appFooter div.logos{padding:0 1rem;display:flex;flex-direction:row;justify-content:center}footer.appFooter div.logos a.logo-w3c{margin-top:.25rem;margin-right:1rem}footer.appFooter div.logos a.logo-w3c svg{color:inherit;vertical-align:middle}footer.appFooter div.logos a.logo-w3c svg path{fill:#091832}footer.appFooter div.logos a.logo-w3c:hover svg path{fill:#005790}footer.appFooter div.logos a.logo-wai{color:#005790;color:#091832;margin-right:1rem;text-decoration:none}footer.appFooter div.logos a.logo-wai:hover span{color:#005790}footer.appFooter div.logos a.logo-wai span.wai{font-size:.75rem;display:flex;justify-content:center;flex-direction:column}footer.appFooter div.logos a.logo-wai span.wai span.wa{padding-bottom:2px}footer.appFooter div.logos a.logo-wai span.wai span.i{border-top:1px solid #eed009;padding-top:2px;display:flex;justify-content:space-between}footer.appFooter div.logos a.logo-github svg{color:inherit;vertical-align:middle}footer.appFooter div.logos a.logo-github svg path{fill:#091832}footer.appFooter div.logos a.logo-github:hover svg path{fill:#005790} /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}body{font-family:Lora,serif}h1,h2,h3,h4,h5,h6{font-family:Roboto,sans-serif;color:#036;text-decoration:none;margin:1rem 0;display:block}ul{margin:0}hr{opacity:.1}a{color:#0067aa;font-weight:500}a:hover{opacity:.9}table{border-collapse:collapse;width:100%;table-layout:fixed}table thead{border-bottom:1px solid #2aabff}table thead th{font-family:Roboto,sans-serif;color:#036;text-decoration:none;margin:1rem 0;display:block;font-weight:300;font-style:italic;text-align:left;font-size:85%;display:table-cell;background-color:#f3f4f6;padding:.2rem 0;text-overflow:ellipsis;overflow:hidden}table tbody tr{border-bottom:1px solid #f3f4f6}table tbody tr td{padding:.2rem 0;text-overflow:ellipsis;overflow:hidden}table tbody tr td.capitalize{text-transform:capitalize}table tbody tr td a{text-decoration:none;display:inline-block;margin:0 .5em 0 0;text-overflow:ellipsis;overflow:hidden}table tbody tr td a svg{fill:currentColor}table tbody tr td a:active,table tbody tr td a:focus,table tbody tr td a:hover{color:#001a33;border:none}table.compact tbody tr{border-bottom:none}table.compact tbody tr td{padding:none}.btn,button{padding:1em;text-decoration:none;line-height:1em;display:inline-block;letter-spacing:.1em;transition:border-color .2s ease-in-out,background .2s ease-in-out,color .2s ease-in-out;border:3px solid #2aabff;color:#fefefe;background:#091832;cursor:pointer}.btn:active,.btn:focus,.btn:hover,button:active,button:focus,button:hover{color:#091832;background:#fefefe;border-color:#091832}.btn.btn-secondary,button.btn-secondary{border:3px solid transparent;color:#fefefe;background:#091832}.btn.btn-secondary:active,.btn.btn-secondary:focus,.btn.btn-secondary:hover,button.btn-secondary:active,button.btn-secondary:focus,button.btn-secondary:hover{color:#2aabff}.btn.btn-secondary:active,button.btn-secondary:active{transform:translate(1px,1px)}blockquote{margin:2rem 0;background-color:#f6fbff;border:1px solid #2aabff;padding:1rem}figure{background:#ffe;margin:0 1em;padding:.5em 1em;border:1px solid #880;border-radius:4px;display:inline-block}figure>figcaption{margin-bottom:.5em}figure>img{display:block;margin:0 auto}.hide{display:none!important}code[class*=language-],pre[class*=language-]{color:#f8f8f2;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;text-align:left;white-space:pre-wrap;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:0}:not(pre)>code[class*=language-],pre[class*=language-]{background:#091832}:not(pre)>code[class*=language-]{padding:.1em;border-radius:0;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#d4d0ab}.token.punctuation{color:#fefefe}.token.constant,.token.deleted,.token.property,.token.symbol,.token.tag{color:#ffa07a}.token.boolean,.token.number{color:#00e0e0}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#abe338}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url,.token.variable{color:#00e0e0}.token.atrule,.token.attr-value,.token.function{color:gold}.token.keyword{color:#00e0e0}.token.important,.token.regex{color:gold}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}@media screen and (-ms-high-contrast:active){code[class*=language-],pre[class*=language-]{color:windowText;background:window}:not(pre)>code[class*=language-],pre[class*=language-]{background:window}.token.important{background:highlight;color:window;font-weight:400}.token.atrule,.token.attr-value,.token.function,.token.keyword,.token.operator,.token.selector{font-weight:700}.token.attr-value,.token.comment,.token.doctype,.token.function,.token.keyword,.token.operator,.token.property,.token.string{color:highlight}.token.attr-value,.token.url{font-weight:400}}.language-text{background:#fff!important;color:#036!important;font-weight:700;padding:.1em;border-radius:0;white-space:normal}.language-text,code{line-height:1.5;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace}section.layoutContainer{position:fixed;left:0;right:0;top:0;bottom:0;overflow:hidden;display:flex}section.layoutContainer>main{height:100%;display:flex;flex-direction:column;width:100%;background-color:#fff}section.layoutContainer>main>section{width:auto;display:flex;flex-direction:row;flex-grow:1;overflow-y:auto;color:#000;line-height:1.5}section.layoutContainer.hasMenu>main{width:calc(100% - 225px)}div.note{padding:.5rem 1rem;border:1px solid #2aabff;border-left-width:4px;background-color:rgba(42,171,255,.4)}div.note>b{padding:.25rem 0;text-transform:uppercase;display:block;margin:0}div.note>p{margin:0}div.note.valid{border-color:#00a4b8;background-color:rgba(0,164,184,.4)}div.note.invalid{border-color:#ffa181;background-color:rgba(255,161,129,.4)}div.ruleHeader{display:flex;justify-content:space-between;align-items:center}div.ruleHeader>div.childContainer{display:flex;justify-content:flex-end}div.badge{display:inline-flex;align-items:center;font-size:85%;font-weight:700;margin-right:1rem}div.badge>span.title{font-style:italic;font-weight:400;padding-right:.15rem;margin-right:.15rem;text-transform:capitalize;text-align:right}.page-implementer{margin:2rem 0;padding:0 3rem;width:100%;counter-reset:item 0}.page-implementer h1{border-bottom:1px solid #f3f4f6;padding:2rem 0;margin:0;text-decoration:none}.page-implementer h1>p{margin:0}.page-implementer h2:hover,.page-implementer h3:hover,.page-implementer h4:hover,.page-implementer h5:hover,.page-implementer h6:hover{text-decoration:underline}.page-implementer .cardItem{padding:1rem;margin-bottom:1.5rem;background-color:rgba(243,244,246,.5);box-shadow:0 0 12px rgba(0,0,0,.2);position:relative}.page-implementer .cardItem:hover{outline:2px solid #2aabff}.page-implementer .cardItem h2,.page-implementer .cardItem p{margin:0}.page-implementer .cardItem:before{opacity:0;counter-increment:item;content:counter(item);position:absolute;left:-20px}article.ruleCard{padding:1rem;margin-bottom:1.5rem;display:flex;flex-direction:column;background-color:rgba(243,244,246,.5);box-shadow:0 0 12px rgba(0,0,0,.2)}article.ruleCard:hover{outline:2px solid #2aabff}article.ruleCard div.meta h3.heading,article.ruleCard div.meta span.heading{padding:.25rem .5rem;background-color:#f3f4f6;border:1px solid transparent;text-transform:capitalize;display:inline-block;font-weight:700;margin-top:1em;font-size:90%;color:inherit;cursor:auto}article.ruleCard div.meta h3.heading:hover,article.ruleCard div.meta span.heading:hover{text-decoration:none}article.ruleCard div.meta a.sc-item{cursor:pointer;text-transform:capitalize}article.ruleCard div.meta a.sc-item:hover{opacity:.9}article.ruleCard div.meta a.sc-item p{margin:0;padding:0}article.ruleCard>section{flex:1 1}article.ruleCard>section>a{text-decoration:none}article.ruleCard>section h2{margin:0 0 .5rem}article.ruleCard>section h2>p{margin:0}article.ruleCard>section:last-child{border-bottom:none}form.rulesFilter{padding:2rem 0}form.rulesFilter div.filterTextInputGroup>label{display:block;margin-bottom:.25rem}form.rulesFilter div.filterTextInputGroup>input{padding:.5rem .2rem;min-width:240px;background-color:#f3f4f6}form.rulesFilter div.filterTextInputGroup>small{font-size:80%;font-style:italic;display:block;text-align:right}.page-rules{padding:0 3rem;display:flex;flex-direction:column;margin:0;height:100%;width:100%}.page-rules h1{border-bottom:1px solid #f3f4f6;padding:2rem 0;margin:0;text-decoration:none}.page-rules h1>p{margin:0}.page-rules h2:hover,.page-rules h3:hover,.page-rules h4:hover,.page-rules h5:hover,.page-rules h6:hover{text-decoration:underline}.page-rules h1{border:none;padding:.5rem 0;margin-bottom:0}.page-rules>header.titleAndFilter{display:flex;align-items:center}.page-rules>header.titleAndFilter>h1{flex:1 1}.page-rules>section.content{padding:1rem 0}.page-rules.sm>header.titleAndFilter{display:block}.page-rules.sm>header.titleAndFilter>form{padding:1rem 0}.page-rules.sm>header.titleAndFilter>form input{width:100%}.page-changelog{margin:2rem 0;padding:0 3rem;width:100%}.page-changelog h1{border-bottom:1px solid #f3f4f6;padding:2rem 0;margin:0;text-decoration:none}.page-changelog h1>p{margin:0}.page-changelog h2:hover,.page-changelog h3:hover,.page-changelog h4:hover,.page-changelog h5:hover,.page-changelog h6:hover{text-decoration:underline}.page-default{margin:2rem 0;padding:0 3rem;width:100%}.page-default h1{border-bottom:1px solid #f3f4f6;padding:2rem 0;margin:0;text-decoration:none}.page-default h1>p{margin:0}.page-default h2:hover,.page-default h3:hover,.page-default h4:hover,.page-default h5:hover,.page-default h6:hover{text-decoration:underline}.page-implementations{margin:2rem 0;padding:0 3rem;width:100%}.page-implementations h1{border-bottom:1px solid #f3f4f6;padding:2rem 0;margin:0;text-decoration:none}.page-implementations h1>p{margin:0}.page-implementations h2:hover,.page-implementations h3:hover,.page-implementations h4:hover,.page-implementations h5:hover,.page-implementations h6:hover{text-decoration:underline}.page-implementer-incomplete{margin:2rem 0;padding:0 3rem;width:100%;counter-reset:item 0}.page-implementer-incomplete h1{border-bottom:1px solid #f3f4f6;padding:2rem 0;margin:0;text-decoration:none}.page-implementer-incomplete h1>p{margin:0}.page-implementer-incomplete h2:hover,.page-implementer-incomplete h3:hover,.page-implementer-incomplete h4:hover,.page-implementer-incomplete h5:hover,.page-implementer-incomplete h6:hover{text-decoration:underline}.page-implementer-incomplete .cardItem{padding:1rem;margin-bottom:1.5rem;background-color:rgba(243,244,246,.5);box-shadow:0 0 12px rgba(0,0,0,.2);position:relative}.page-implementer-incomplete .cardItem:hover{outline:2px solid #2aabff}.page-implementer-incomplete .cardItem h2,.page-implementer-incomplete .cardItem p{margin:0}.page-implementer-incomplete .cardItem:before{opacity:0;counter-increment:item;content:counter(item);position:absolute;left:-20px}section.tableOfContents{background-color:#f3f4f6;min-width:225px;max-width:300px;overflow:auto;font-size:85%;padding-bottom:3rem}section.tableOfContents span.heading{padding:.25rem .5rem;font-family:Roboto,sans-serif;color:#036;text-decoration:none;display:block;text-transform:capitalize;margin:1rem .5rem .5rem 0;display:inline-block}section.tableOfContents span.heading:first-child{margin-top:6rem}section.tableOfContents ul{padding:0;list-style:none;margin:.5rem 0}section.tableOfContents ul li a,section.tableOfContents ul li span{display:inline-block}section.tableOfContents ul li a{cursor:pointer;text-decoration:none;padding:0 1rem;display:block}section.tableOfContents ul li a:hover{color:#2aabff}section.tableOfContents ul ul{margin-left:1rem}.page-rule{width:100%;margin:0;padding:3rem;overflow-y:auto}.page-rule h1{border-bottom:1px solid #f3f4f6;padding:2rem 0;margin:0;text-decoration:none}.page-rule h1>p{margin:0}.page-rule h2:hover,.page-rule h3:hover,.page-rule h4:hover,.page-rule h5:hover,.page-rule h6:hover{text-decoration:underline}.page-rule div.open-ex-new-tab-wrapper{display:flex;justify-content:space-between;align-items:baseline}.page-rule div.open-ex-new-tab-wrapper>h4{margin-bottom:0}.page-rule div.meta,.page-rule ul.meta{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;justify-content:space-between}.page-rule div.meta h3.heading,.page-rule div.meta span.heading,.page-rule ul.meta h3.heading,.page-rule ul.meta span.heading{padding:.25rem .5rem;background-color:#f3f4f6;border:1px solid transparent;text-transform:capitalize;display:inline-flex;font-weight:700;margin-top:1em;font-size:90%;color:#036;cursor:auto}.page-rule div.meta h3.heading:hover,.page-rule div.meta span.heading:hover,.page-rule ul.meta h3.heading:hover,.page-rule ul.meta span.heading:hover{text-decoration:none}.page-rule div.meta p,.page-rule ul.meta p{margin:0;display:block;padding:.25rem .5rem;text-transform:capitalize}.page-rule div.meta a.sc-item,.page-rule ul.meta a.sc-item{cursor:pointer;text-transform:capitalize}.page-rule div.meta a.sc-item:hover,.page-rule ul.meta a.sc-item:hover{opacity:.9}.page-rule div.meta a.sc-item.block,.page-rule ul.meta a.sc-item.block{display:block}.page-rule div.meta a.sc-item.block p,.page-rule ul.meta a.sc-item.block p{margin:0;padding:0}</style><meta name="generator" content="Gatsby 2.32.13"/><title data-react-helmet="true">Rules | ACT-Rules Community</title><meta data-react-helmet="true" http-equiv="Cache-Control" content="public, max-age=0, must-revalidate"/><meta data-react-helmet="true" http-equiv="Pragma" content="no-cache"/><meta data-react-helmet="true" http-equiv="Expires" content="0"/><link rel="icon" href="/favicon-32x32.png?v=6fe933b597bc422f15f1d811c829b29e" type="image/png"/><link rel="manifest" href="/manifest.webmanifest" crossorigin="anonymous"/><link rel="apple-touch-icon" sizes="48x48" href="/icons/icon-48x48.png?v=6fe933b597bc422f15f1d811c829b29e"/><link rel="apple-touch-icon" sizes="72x72" href="/icons/icon-72x72.png?v=6fe933b597bc422f15f1d811c829b29e"/><link rel="apple-touch-icon" sizes="96x96" href="/icons/icon-96x96.png?v=6fe933b597bc422f15f1d811c829b29e"/><link rel="apple-touch-icon" sizes="144x144" href="/icons/icon-144x144.png?v=6fe933b597bc422f15f1d811c829b29e"/><link rel="apple-touch-icon" sizes="192x192" href="/icons/icon-192x192.png?v=6fe933b597bc422f15f1d811c829b29e"/><link rel="apple-touch-icon" sizes="256x256" href="/icons/icon-256x256.png?v=6fe933b597bc422f15f1d811c829b29e"/><link rel="apple-touch-icon" sizes="384x384" href="/icons/icon-384x384.png?v=6fe933b597bc422f15f1d811c829b29e"/><link rel="apple-touch-icon" sizes="512x512" href="/icons/icon-512x512.png?v=6fe933b597bc422f15f1d811c829b29e"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/static/webfonts/s/lora/v24/0QI6MX1D_JOuGQbT0gvTJPa787weuxJBkq0.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/static/webfonts/s/lora/v24/0QI6MX1D_JOuGQbT0gvTJPa787z5vBJBkq0.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/static/webfonts/s/roboto/v30/KFOmCnqEu92Fr1Mu4mxK.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/static/webfonts/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfBBc4.woff2"/><style>@font-face{font-family:Lora;font-style:normal;font-weight:400;src:url(/static/webfonts/s/lora/v24/0QI6MX1D_JOuGQbT0gvTJPa787weuxJBkq0.woff2) format("woff2");font-display:swap}@font-face{font-family:Lora;font-style:normal;font-weight:700;src:url(/static/webfonts/s/lora/v24/0QI6MX1D_JOuGQbT0gvTJPa787z5vBJBkq0.woff2) format("woff2");font-display:swap}@font-face{font-family:Lora;font-style:normal;font-weight:400;src:url(/static/webfonts/s/lora/v24/0QI6MX1D_JOuGQbT0gvTJPa787weuxJBkqs.woff) format("woff");font-display:swap}@font-face{font-family:Lora;font-style:normal;font-weight:700;src:url(/static/webfonts/s/lora/v24/0QI6MX1D_JOuGQbT0gvTJPa787z5vBJBkqs.woff) format("woff");font-display:swap}@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:url(/static/webfonts/s/roboto/v30/KFOmCnqEu92Fr1Mu4mxK.woff2) format("woff2");font-display:swap}@font-face{font-family:Roboto;font-style:normal;font-weight:700;src:url(/static/webfonts/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfBBc4.woff2) format("woff2");font-display:swap}@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:url(/static/webfonts/s/roboto/v30/KFOmCnqEu92Fr1Mu4mxM.woff) format("woff");font-display:swap}@font-face{font-family:Roboto;font-style:normal;font-weight:700;src:url(/static/webfonts/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfBBc-.woff) format("woff");font-display:swap}</style><style type="text/css"> .anchor.before { position: absolute; top: 0; left: 0; transform: translateX(-100%); padding-right: 4px; } .anchor.after { display: inline-block; padding-left: 4px; } h1 .anchor svg, h2 .anchor svg, h3 .anchor svg, h4 .anchor svg, h5 .anchor svg, h6 .anchor svg { visibility: hidden; } h1:hover .anchor svg, h2:hover .anchor svg, h3:hover .anchor svg, h4:hover .anchor svg, h5:hover .anchor svg, h6:hover .anchor svg, h1 .anchor:focus svg, h2 .anchor:focus svg, h3 .anchor:focus svg, h4 .anchor:focus svg, h5 .anchor:focus svg, h6 .anchor:focus svg { visibility: visible; } </style><script> document.addEventListener("DOMContentLoaded", function(event) { var hash = window.decodeURI(location.hash.replace('#', '')) if (hash !== '') { var element = document.getElementById(hash) if (element) { var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop var clientTop = document.documentElement.clientTop || document.body.clientTop || 0 var offset = element.getBoundingClientRect().top + scrollTop - clientTop // Wait for the browser to finish rendering before scrolling. setTimeout((function() { window.scrollTo(0, offset - 0) }), 0) } } }) </script><link as="script" rel="preload" href="/webpack-runtime-90b402f85379a04cefbd.js"/><link as="script" rel="preload" href="/framework-caaca52af16d464f8089.js"/><link as="script" rel="preload" href="/app-ab0b2e166b078cba7648.js"/><link as="script" rel="preload" href="/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/a22cbe4e-92f083a6844fe7b7be81.js"/><link as="script" rel="preload" href="/25d64555e9a78814a90948d55d62de27c0529341-6117050f40ac8932cee9.js"/><link as="script" rel="preload" href="/d874871c30ab579c69a585def3286e922215136b-c5b2582de7c8f4cba173.js"/><link as="script" rel="preload" href="/component---src-pages-rules-js-73ebb55bca0ff38fa352.js"/><link as="fetch" rel="preload" href="/page-data/rules/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/2135569447.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/3230152527.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/811143740.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><section class="layoutContainer hasMenu"><aside class="navigation"><div class="appLogo"><a href="/pages/about"><h1>ACT-Rules Community</h1></a></div><nav class="navigation"><ul><li><a href="/pages/about/">About Us</a></li><li><a href="/pages/contribute/">Contributing</a></li><li><a href="/pages/joining/">Joining</a></li><li><a href="/pages/communication/">Communication</a></li><li><a href="/pages/license/">License</a></li><li><hr/></li><li><a aria-current="page" class="active" href="/rules/">Rules</a></li><li><a href="/glossary/">Glossary</a></li><li><hr/></li><li><p class="parent-item">documentation</p><ul><li><a href="/pages/structure/accessibility-support/">Accessibility Support</a></li><li><a href="/pages/design/definition-of-done/">Definition of Done</a></li><li><a href="/pages/design/process/">Process</a></li><li><a href="/pages/design/rule-design/">Rule Design</a></li><li><a href="/pages/design/rule-template/">Rule Template</a></li><li><a href="/pages/structure/terminology/">Terminology</a></li></ul><hr/></li><li><p class="parent-item">implementations</p><ul><li><a href="/pages/implementations/overview/">ACT Implementations</a></li><li><a href="/pages/implementations/mapping/">Mapping To Rule</a></li><li><a href="/pages/implementations/earl-reports/">Reporting Format</a></li><li><a href="/pages/implementations/reporting/">Submit an Implementation</a></li><li><a href="/pages/implementations/testcases/">Test Cases</a></li><li><a href="/pages/implementations/tools/">Testing Tools</a></li></ul><hr/></li></ul></nav></aside><main><header class="appHeader"><button type="button" class="btn-secondary menuBtn" aria-label="Toggle navigation menu">☰</button><div class="name"><a class="hide" href="/pages/about"><p>ACT-Rules Community</p></a></div><div class="logos"><a href="https://github.com/act-rules/act-rules.github.io" target="_blank" rel="noopener noreferrer" class="logo-github" aria-label="link to github repository"><svg enable-background="new 0 0 512 512" id="Layer_1" version="1.1" width="25" height="25" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><g><path d="M296.133,354.174c49.885-5.891,102.942-24.029,102.942-110.192 c0-24.49-8.624-44.448-22.67-59.869c2.266-5.89,9.515-28.114-2.734-58.947c0,0-18.139-5.898-60.759,22.669 c-18.139-4.983-38.09-8.163-56.682-8.163c-19.053,0-39.011,3.18-56.697,8.163c-43.082-28.567-61.22-22.669-61.22-22.669 c-12.241,30.833-4.983,53.057-2.718,58.947c-14.061,15.42-22.677,35.379-22.677,59.869c0,86.163,53.057,104.301,102.942,110.192 c-6.344,5.452-12.241,15.873-14.507,30.387c-12.702,5.438-45.808,15.873-65.758-18.592c0,0-11.795-21.31-34.012-22.669 c0,0-22.224-0.453-1.813,13.592c0,0,14.96,6.812,24.943,32.653c0,0,13.6,43.089,76.179,29.48v38.543 c0,5.906-4.53,12.702-15.865,10.89C96.139,438.977,32.2,354.626,32.2,255.77c0-123.807,100.216-224.022,224.03-224.022 c123.347,0,224.023,100.216,223.57,224.022c0,98.856-63.946,182.754-152.828,212.688c-11.342,2.266-15.873-4.53-15.873-10.89 V395.45C311.1,374.577,304.288,360.985,296.133,354.174L296.133,354.174z M512,256.23C512,114.73,397.263,0,256.23,0 C114.73,0,0,114.73,0,256.23C0,397.263,114.73,512,256.23,512C397.263,512,512,397.263,512,256.23L512,256.23z"></path></g></svg></a></div></header><section><section class="page-rules"><header class="titleAndFilter"><h1>Rules</h1><form class="rulesFilter"><div class="filterTextInputGroup"><label for="filterTextInput">Filter:</label><input type="text" id="filterTextInput" placeholder="Enter more than 3 characters..." value=""/><small>Supports id, name, description or type</small></div></form></header><section class="content"><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/5f99a7"><h2 id="id-5f99a7"><p>ARIA attribute is defined in WAI-ARIA</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each <code>aria-</code> attribute specified is defined in ARIA 1.1.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li>This rule is not required for conformance.</li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->4</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/ff89c9"><h2 id="id-ff89c9"><p>ARIA required context role</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that an element with an explicit semantic role exists inside its required context.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#info-and-relationships" class="sc-item" target="_blank" rel="noopener noreferrer">1.3.1 Info and Relationships (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->2</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/bc4a75"><h2 id="id-bc4a75"><p>ARIA required owned elements</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that an element with an explicit semantic role has at least one of its required owned elements.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#info-and-relationships" class="sc-item" target="_blank" rel="noopener noreferrer">1.3.1 Info and Relationships (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/6a7281"><h2 id="id-6a7281"><p>ARIA state or property has valid value</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each ARIA state or property has a valid value type.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/wai-aria-1.1/#state_prop_values" class="sc-item" target="_blank" rel="noopener noreferrer">ARIA 1.1, 6.3 Values for States and Properties</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->2</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/5c01ea"><h2 id="id-5c01ea"><p>ARIA state or property is permitted</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that WAI-ARIA states or properties are allowed for the element they are specified on.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/aria/ARIA5" class="sc-item" target="_blank" rel="noopener noreferrer">ARIA5: Using WAI-ARIA state and property attributes to expose the state of a user interface component</a></li><li><a href="https://www.w3.org/TR/wai-aria-1.1/#state_property_processing" class="sc-item" target="_blank" rel="noopener noreferrer">ARIA 1.1, 7.6 State and Property Attribute Processing</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->4</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/e6952f"><h2 id="id-e6952f"><p>Attribute is not duplicated</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that HTML and SVG starting tags do not contain duplicated attributes.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#parsing" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.1 Parsing (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H94" class="sc-item" target="_blank" rel="noopener noreferrer">H94: Ensuring that elements do not contain duplicate attributes</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/1a02b0"><h2 id="id-1a02b0"><p>Audio and visuals of video element have transcript</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that non-streaming <code>video</code> elements have all audio and visual information available in a transcript.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#media-alternative-prerecorded" class="sc-item" target="_blank" rel="noopener noreferrer">1.2.8 Media Alternative (Prerecorded) (Level AAA)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G69" class="sc-item" target="_blank" rel="noopener noreferrer">G69: Providing an alternative for time based media</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/e7aa44"><h2 id="id-e7aa44"><p>Audio element content has text alternative</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that <code>audio</code> elements have a text alternative available.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#audio-only-and-video-only-prerecorded" class="sc-item" target="_blank" rel="noopener noreferrer">1.2.1 Audio-only and Video-only (Prerecorded) (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G158" class="sc-item" target="_blank" rel="noopener noreferrer">G158: Providing an alternative for time-based media for audio-only content</a></li></ul></div><div class="meta"><span class="heading">Input Rules:</span><ul><li><a class="sc-item block" href="2eb176"><p>Audio element content has transcript</p></a></li><li><a class="sc-item block" href="afb423"><p>Audio element content is media alternative for text</p></a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/2eb176"><h2 id="id-2eb176"><p>Audio element content has transcript</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that <code>audio</code> elements have a transcript that includes all auditory information.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li>This rule is not required for conformance.</li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/afb423"><h2 id="id-afb423"><p>Audio element content is media alternative for text</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the <code>audio</code> element is a media alternative for text on the page.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li>This rule is not required for conformance.</li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/80f0bf"><h2 id="id-80f0bf"><p>Audio or video element avoids automatically playing audio</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that audio or video that plays automatically does not have audio that lasts for more than 3 seconds or has an audio control mechanism to stop or mute it.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#audio-control" class="sc-item" target="_blank" rel="noopener noreferrer">1.4.2 Audio Control (Level A)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#cc5" class="sc-item" target="_blank" rel="noopener noreferrer">WCAG Non-Interference</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G60" class="sc-item" target="_blank" rel="noopener noreferrer">G60: Playing a sound that turns off automatically within three seconds</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G170" class="sc-item" target="_blank" rel="noopener noreferrer">G170: Providing a control near the beginning of the Web page that turns off sounds that play automatically</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G171" class="sc-item" target="_blank" rel="noopener noreferrer">G171: Playing sounds only on user request</a></li></ul></div><div class="meta"><span class="heading">Input Rules:</span><ul><li><a class="sc-item block" href="4c31df"><p>Audio or video element that plays automatically has a control mechanism</p></a></li><li><a class="sc-item block" href="aaa1bf"><p>Audio or video element that plays automatically has no audio that lasts more than 3 seconds</p></a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/4c31df"><h2 id="id-4c31df"><p>Audio or video element that plays automatically has a control mechanism</p></h2></a><div class="childContainer"></div></div><div><p>audio or video that plays automatically must have a control mechanism.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G170" class="sc-item" target="_blank" rel="noopener noreferrer">G170: Providing a control near the beginning of the Web page that turns off sounds that play automatically</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/aaa1bf"><h2 id="id-aaa1bf"><p>Audio or video element that plays automatically has no audio that lasts more than 3 seconds</p></h2></a><div class="childContainer"></div></div><div><p><code>audio</code> or <code>video</code> that plays automatically does not output audio for more than 3 seconds.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G60" class="sc-item" target="_blank" rel="noopener noreferrer">G60: Playing a sound that turns off automatically within three seconds</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/73f2c2"><h2 id="id-73f2c2"><p>Autocomplete attribute has valid value</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the HTML <code>autocomplete</code> attribute has a correct value.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#identify-input-purpose" class="sc-item" target="_blank" rel="noopener noreferrer">1.3.5 Identify Input Purpose (Level AA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/3e12e1"><h2 id="id-3e12e1"><p>Block of repeated content is collapsible</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that repeated blocks of content are collapsible</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/client-side-script/SCR28" class="sc-item" target="_blank" rel="noopener noreferrer">SCR28: Using an expandable and collapsible menu to bypass block of content</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/97a4e1"><h2 id="id-97a4e1"><p>Button has non-empty accessible name</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each <code>button</code> element has a non-empty accessible name.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#name-role-value" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.2 Name, Role, Value (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->5</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/cf77f2"><h2 id="id-cf77f2"><p>Bypass Blocks of Repeated Content</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each page has a mechanism to bypass repeated blocks of content.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#bypass-blocks" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.1 Bypass Blocks (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G1" class="sc-item" target="_blank" rel="noopener noreferrer">G1: Adding a link at the top of each page that goes directly to the main content area</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G123" class="sc-item" target="_blank" rel="noopener noreferrer">G123: Adding a link at the beginning of a block of repeated content to go to the end of the block</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G124" class="sc-item" target="_blank" rel="noopener noreferrer">G124: Adding links at the top of the page to each area of the content</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H69" class="sc-item" target="_blank" rel="noopener noreferrer">H69: Providing heading elements at the beginning of each section of content</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/client-side-script/SCR28" class="sc-item" target="_blank" rel="noopener noreferrer">SCR28: Using an expandable and collapsible menu to bypass block of content</a></li></ul></div><div class="meta"><span class="heading">Input Rules:</span><ul><li><a class="sc-item block" href="047fe0"><p>Document has heading for non-repeated content</p></a></li><li><a class="sc-item block" href="b40fd1"><p>Document has a landmark with non-repeated content</p></a></li><li><a class="sc-item block" href="3e12e1"><p>Block of repeated content is collapsible</p></a></li><li><a class="sc-item block" href="ye5d6e"><p>Document has an instrument to move focus to non-repeated content</p></a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/9bd38c"><h2 id="id-9bd38c"><p>Content has alternative for visual reference</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that when content is identified through a visual reference, there are also non-visual references identifying the same content.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#sensory-characteristics" class="sc-item" target="_blank" rel="noopener noreferrer">1.3.3 Sensory Characteristics (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G96" class="sc-item" target="_blank" rel="noopener noreferrer">G96: Providing textual identification of items that otherwise rely only on sensory information to be understood</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/9eb3f6"><h2 id="id-9eb3f6"><p>DEPRECATED — Image filename is accessible name for image</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that image elements that use their source filename as their accessible name do so without loss of information to the user.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#non-text-content" class="sc-item" target="_blank" rel="noopener noreferrer">1.1.1 Non-text Content (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G94" class="sc-item" target="_blank" rel="noopener noreferrer">G94: Providing short text alternative for non-text content that serves the same purpose and presents the same information as the non-text content</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G95" class="sc-item" target="_blank" rel="noopener noreferrer">G95: Providing short text alternatives that provide a brief description of the non-text content</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/f196ce"><h2 id="id-f196ce"><p>DEPRECATED — Video element visual content has description track</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that description tracks that come with non-streaming <code>video</code> elements are descriptive.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G78" class="sc-item" target="_blank" rel="noopener noreferrer">G78: Providing a second, user-selectable, audio track that includes audio descriptions</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H96" class="sc-item" target="_blank" rel="noopener noreferrer">H96: Using the track element to provide audio descriptions</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/ac7dc6"><h2 id="id-ac7dc6"><p>DEPRECATED — Video element visual-only content has description track</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that description tracks that come with non-streaming <code>video</code> elements, without audio, are descriptive.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H96" class="sc-item" target="_blank" rel="noopener noreferrer">H96: Using the track element to provide audio descriptions</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/7677a9"><h2 id="id-7677a9"><p>Device motion based changes to the content can also be created from the user interface</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that changes to the content of a web page that result from device motion events can also be caused by user interface components.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#motion-actuation" class="sc-item" target="_blank" rel="noopener noreferrer">2.5.4 Motion Actuation (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/c249d5"><h2 id="id-c249d5"><p>Device motion based changes to the content can be disabled</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that it is possible to disable any changes to the content of the web page resulting from device motion based events.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#motion-actuation" class="sc-item" target="_blank" rel="noopener noreferrer">2.5.4 Motion Actuation (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/b40fd1"><h2 id="id-b40fd1"><p>Document has a landmark with non-repeated content</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each page has an element with a landmark semantic role starting with non-repeated content</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li>This rule is not required for conformance.</li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/ye5d6e"><h2 id="id-ye5d6e"><p>Document has an instrument to move focus to non-repeated content</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that there is an instrument to move focus to non-repeated content in the page</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G1" class="sc-item" target="_blank" rel="noopener noreferrer">G1: Adding a link at the top of each page that goes directly to the main content area</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G123" class="sc-item" target="_blank" rel="noopener noreferrer">G123: Adding a link at the beginning of a block of repeated content to go to the end of the block</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G124" class="sc-item" target="_blank" rel="noopener noreferrer">G124: Adding links at the top of the page to each area of the content</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/047fe0"><h2 id="id-047fe0"><p>Document has heading for non-repeated content</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the non-repeated content contains a heading</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H69" class="sc-item" target="_blank" rel="noopener noreferrer">H69: Providing heading elements at the beginning of each section of content</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/oj04fd"><h2 id="id-oj04fd"><p>Element in sequential focus order has visible focus</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each element in sequential focus order has some visible focus indication.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#focus-visible" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.7 Focus Visible (Level AA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->2</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/46ca7f"><h2 id="id-46ca7f"><p>Element marked as decorative is not exposed</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that elements marked as decorative either are not included in the accessibility tree, or have a presentational role.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li>This rule is not required for conformance.</li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->2</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/6cfa84"><h2 id="id-6cfa84"><p>Element with aria-hidden has no content in sequential focus navigation</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that elements with an <code>aria-hidden</code> attribute do not contain elements that are part of the sequential focus navigation and focusable.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#name-role-value" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.2 Name, Role, Value (Level A)</a></li><li><a href="https://www.w3.org/TR/using-aria/#fourth" class="sc-item" target="_blank" rel="noopener noreferrer">Fourth rule of ARIA use</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/de46e4"><h2 id="id-de46e4"><p>Element with lang attribute has valid language tag</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that a non-empty <code>lang</code> attribute of an element in the page has a language tag with a known primary language subtag.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#language-of-parts" class="sc-item" target="_blank" rel="noopener noreferrer">3.1.2 Language of Parts (Level AA)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H58" class="sc-item" target="_blank" rel="noopener noreferrer">H58: Using language attributes to identify changes in the human language</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/307n5z"><h2 id="id-307n5z"><p>Element with presentational children has no focusable content</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that elements with a role that makes its children presentational do not contain focusable elements.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#name-role-value" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.2 Name, Role, Value (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/4e8ab6"><h2 id="id-4e8ab6"><p>Element with role attribute has required states and properties</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that elements that have an explicit role also specify all required states and properties.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#name-role-value" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.2 Name, Role, Value (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/aria/ARIA5" class="sc-item" target="_blank" rel="noopener noreferrer">ARIA5: Using WAI-ARIA state and property attributes to expose the state of a user interface component</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/36b590"><h2 id="id-36b590"><p>Error message describes invalid form field value</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that text error messages provided when the user completes a form field with invalid values or using an invalid format, identify the cause of the error or how to fix the error.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#error-identification" class="sc-item" target="_blank" rel="noopener noreferrer">3.3.1 Error Identification (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/80af7b"><h2 id="id-80af7b"><p>Focusable element has no keyboard trap</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks for keyboard traps. This includes use of both standard and non-standard keyboard navigation to navigate through all content without becoming trapped.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#no-keyboard-trap" class="sc-item" target="_blank" rel="noopener noreferrer">2.1.2 No Keyboard Trap (Level A)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#cc5" class="sc-item" target="_blank" rel="noopener noreferrer">WCAG Non-Interference</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G21" class="sc-item" target="_blank" rel="noopener noreferrer">G21: Ensuring that users are not trapped in content</a></li></ul></div><div class="meta"><span class="heading">Input Rules:</span><ul><li><a class="sc-item block" href="a1b64e"><p>Focusable element has no keyboard trap via standard navigation</p></a></li><li><a class="sc-item block" href="ebe86a"><p>Focusable element has no keyboard trap via non-standard navigation</p></a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/ebe86a"><h2 id="id-ebe86a"><p>Focusable element has no keyboard trap via non-standard navigation</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks if it is possible to use non-standard keyboard navigation to navigate through content where focus is trapped when using standard ways of keyboard navigation.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li>This rule is not required for conformance.</li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/a1b64e"><h2 id="id-a1b64e"><p>Focusable element has no keyboard trap via standard navigation</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks if it is possible to use standard keyboard navigation to navigate through all content on a web page without becoming trapped in any element.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li>This rule is not required for conformance.</li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/e086e5"><h2 id="id-e086e5"><p>Form field has non-empty accessible name</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each form field element has a non-empty accessible name.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#name-role-value" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.2 Name, Role, Value (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->4</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/cc0f0a"><h2 id="id-cc0f0a"><p>Form field label is descriptive</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that labels describe the purpose of form field elements.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#headings-and-labels" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.6 Headings and Labels (Level AA)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G131" class="sc-item" target="_blank" rel="noopener noreferrer">G131: Providing descriptive labels</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/a25f45"><h2 id="id-a25f45"><p>Headers attribute specified on a cell refers to cells in the same table element</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the <code>headers</code> attribute on a cell refer to other cells in the same <code>table</code> element.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#info-and-relationships" class="sc-item" target="_blank" rel="noopener noreferrer">1.3.1 Info and Relationships (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H43" class="sc-item" target="_blank" rel="noopener noreferrer">H43: Using id and headers attributes to associate data cells with header cells in data tables</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->4</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/ffd0e9"><h2 id="id-ffd0e9"><p>Heading has non-empty accessible name</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each heading has a non-empty accessible name.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#info-and-relationships" class="sc-item" target="_blank" rel="noopener noreferrer">1.3.1 Info and Relationships (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H42" class="sc-item" target="_blank" rel="noopener noreferrer">H42: Using h1-h6 to identify headings</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/b49b2e"><h2 id="id-b49b2e"><p>Heading is descriptive</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that headings describe the topic or purpose of the content.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#headings-and-labels" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.6 Headings and Labels (Level AA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/off6ek"><h2 id="id-off6ek"><p>HTML element language subtag matches language</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the primary language subtag of an element matches its default language</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#language-of-parts" class="sc-item" target="_blank" rel="noopener noreferrer">3.1.2 Language of Parts (Level AA)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H58" class="sc-item" target="_blank" rel="noopener noreferrer">H58: Using language attributes to identify changes in the human language</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/0va7u6"><h2 id="id-0va7u6"><p>HTML graphics contain no text</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that images of text are not used</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#images-of-text" class="sc-item" target="_blank" rel="noopener noreferrer">1.4.5 Images of Text (Level AA)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#images-of-text-no-exception" class="sc-item" target="_blank" rel="noopener noreferrer">1.4.9 Images of Text (No Exception) (Level AAA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/b5c3f8"><h2 id="id-b5c3f8"><p>HTML page has lang attribute</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that an HTML page has a non-empty <code>lang</code> attribute.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#language-of-page" class="sc-item" target="_blank" rel="noopener noreferrer">3.1.1 Language of Page (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H57" class="sc-item" target="_blank" rel="noopener noreferrer">H57: Using language attributes on the html element</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->4</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/2779a5"><h2 id="id-2779a5"><p>HTML page has non-empty title</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that a non-embedded HTML page has a non-empty title.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#page-titled" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.2 Page Titled (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G88" class="sc-item" target="_blank" rel="noopener noreferrer">G88: Providing descriptive titles for Web pages</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H25" class="sc-item" target="_blank" rel="noopener noreferrer">H25: Providing a title using the title element</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->6</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/5b7ae0"><h2 id="id-5b7ae0"><p>HTML page lang and xml:lang attributes have matching values</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that both <code>lang</code> and <code>xml:lang</code> attributes on the root element of a non-embedded HTML page, have the same primary language subtag.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#language-of-page" class="sc-item" target="_blank" rel="noopener noreferrer">3.1.1 Language of Page (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->5</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/bf051a"><h2 id="id-bf051a"><p>HTML page lang attribute has valid language tag</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the <code>lang</code> attribute of the root element of a non-embedded HTML page has a language tag with a known primary language subtag.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#language-of-page" class="sc-item" target="_blank" rel="noopener noreferrer">3.1.1 Language of Page (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H57" class="sc-item" target="_blank" rel="noopener noreferrer">H57: Using language attributes on the html element</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->4</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/ucwvc8"><h2 id="id-ucwvc8"><p>HTML page language subtag matches default language</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the primary language subtag of the page language matches the default language of the page</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#language-of-page" class="sc-item" target="_blank" rel="noopener noreferrer">3.1.1 Language of Page (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H57" class="sc-item" target="_blank" rel="noopener noreferrer">H57: Using language attributes on the html element</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/c4a8a4"><h2 id="id-c4a8a4"><p>HTML page title is descriptive</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the first title in an HTML page describes the topic or purpose of that page.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#page-titled" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.2 Page Titled (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G88" class="sc-item" target="_blank" rel="noopener noreferrer">G88: Providing descriptive titles for Web pages</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H25" class="sc-item" target="_blank" rel="noopener noreferrer">H25: Providing a title using the title element</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/3ea0c8"><h2 id="id-3ea0c8"><p>Id attribute value is unique</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that all <code>id</code> attribute values on a single page are unique.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#parsing" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.1 Parsing (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H93" class="sc-item" target="_blank" rel="noopener noreferrer">H93: Ensuring that id attributes are unique on a Web page</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->5</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/cae760"><h2 id="id-cae760"><p>Iframe element has non-empty accessible name</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each <code>iframe</code> element has a non-empty accessible name.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#name-role-value" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.2 Name, Role, Value (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/4b1c6c"><h2 id="id-4b1c6c"><p>Iframe elements with identical accessible names have equivalent purpose</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that <code>iframe</code> elements with identical accessible names embed the same resource or equivalent resources.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#name-role-value" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.2 Name, Role, Value (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->2</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/akn7bn"><h2 id="id-akn7bn"><p>Iframe with negative tabindex has no interactive elements</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that <code>iframe</code> elements with a negative <code>tabindex</code> attribute value contain no interactive elements.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#keyboard" class="sc-item" target="_blank" rel="noopener noreferrer">2.1.1 Keyboard (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G202" class="sc-item" target="_blank" rel="noopener noreferrer">G202: Ensuring keyboard control for all functionality</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/qt1vmo"><h2 id="id-qt1vmo"><p>Image accessible name is descriptive</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the accessible names of images serve an equivalent purpose to the image.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#non-text-content" class="sc-item" target="_blank" rel="noopener noreferrer">1.1.1 Non-text Content (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G94" class="sc-item" target="_blank" rel="noopener noreferrer">G94: Providing short text alternative for non-text content that serves the same purpose and presents the same information as the non-text content</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G95" class="sc-item" target="_blank" rel="noopener noreferrer">G95: Providing short text alternatives that provide a brief description of the non-text content</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/59796f"><h2 id="id-59796f"><p>Image button has non-empty accessible name</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each image button element has a non-empty accessible name.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#non-text-content" class="sc-item" target="_blank" rel="noopener noreferrer">1.1.1 Non-text Content (Level A)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#name-role-value" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.2 Name, Role, Value (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G94" class="sc-item" target="_blank" rel="noopener noreferrer">G94: Providing short text alternative for non-text content that serves the same purpose and presents the same information as the non-text content</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G95" class="sc-item" target="_blank" rel="noopener noreferrer">G95: Providing short text alternatives that provide a brief description of the non-text content</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->5</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/23a2a8"><h2 id="id-23a2a8"><p>Image has non-empty accessible name</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each image either has a non-empty accessible name or is marked up as decorative.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#non-text-content" class="sc-item" target="_blank" rel="noopener noreferrer">1.1.1 Non-text Content (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G94" class="sc-item" target="_blank" rel="noopener noreferrer">G94: Providing short text alternative for non-text content that serves the same purpose and presents the same information as the non-text content</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G95" class="sc-item" target="_blank" rel="noopener noreferrer">G95: Providing short text alternatives that provide a brief description of the non-text content</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->4</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/e88epe"><h2 id="id-e88epe"><p>Image not in the accessibility tree is decorative</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that visible <code>img</code>, <code>svg</code> and <code>canvas</code> elements that are ignored by assistive technologies are decorative.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#non-text-content" class="sc-item" target="_blank" rel="noopener noreferrer">1.1.1 Non-text Content (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/24afc2"><h2 id="id-24afc2"><p>Letter spacing in style attributes is not !important</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the <code>style</code> attribute is not used to prevent adjusting <code>letter-spacing</code> by using <code>!important</code>, except if it's at least 0.12 times the font size.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#text-spacing" class="sc-item" target="_blank" rel="noopener noreferrer">1.4.12 Text Spacing (Level AA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->2</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/78fd32"><h2 id="id-78fd32"><p>Line height in style attributes is not !important</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the <code>style</code> attribute is not used to prevent adjusting <code>line-height</code> by using <code>!important</code>, except if it's at least 1.5 times the font size.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#text-spacing" class="sc-item" target="_blank" rel="noopener noreferrer">1.4.12 Text Spacing (Level AA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/c487ae"><h2 id="id-c487ae"><p>Link has non-empty accessible name</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each link has a non-empty accessible name.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#name-role-value" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.2 Name, Role, Value (Level A)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#link-purpose-in-context" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.4 Link Purpose (In Context) (Level A)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#link-purpose-link-only" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.9 Link Purpose (Link Only) (Level AAA)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G91" class="sc-item" target="_blank" rel="noopener noreferrer">G91: Providing link text that describes the purpose of a link</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/5effbb"><h2 id="id-5effbb"><p>Link in context is descriptive</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the accessible name of a link together with its context describes its purpose.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#link-purpose-in-context" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.4 Link Purpose (In Context) (Level A)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#link-purpose-link-only" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.9 Link Purpose (Link Only) (Level AAA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/aizyf1"><h2 id="id-aizyf1"><p>Link is descriptive</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the accessible name of a link describes its purpose.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#link-purpose-link-only" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.9 Link Purpose (Link Only) (Level AAA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/fd3a94"><h2 id="id-fd3a94"><p>Links with identical accessible names and same context serve equivalent purpose</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that links with identical accessible names in the same context resolve to the same or equivalent resources.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#link-purpose-in-context" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.4 Link Purpose (In Context) (Level A)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#link-purpose-link-only" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.9 Link Purpose (Link Only) (Level AAA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/b20e66"><h2 id="id-b20e66"><p>Links with identical accessible names have equivalent purpose</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that links with identical accessible names resolve to the same resource or equivalent resources.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#link-purpose-link-only" class="sc-item" target="_blank" rel="noopener noreferrer">2.4.9 Link Purpose (Link Only) (Level AAA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/m6b1q3"><h2 id="id-m6b1q3"><p>Menuitem has non-empty accessible name</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each element with a <code>menuitem</code> role has a non-empty accessible name.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#name-role-value" class="sc-item" target="_blank" rel="noopener noreferrer">4.1.2 Name, Role, Value (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->5</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/bc659a"><h2 id="id-bc659a"><p>Meta element has no refresh delay</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the <code>meta</code> element is not used for delayed redirecting or refreshing.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#timing-adjustable" class="sc-item" target="_blank" rel="noopener noreferrer">2.2.1 Timing Adjustable (Level A)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#interruptions" class="sc-item" target="_blank" rel="noopener noreferrer">2.2.4 Interruptions (Level AAA)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#change-on-request" class="sc-item" target="_blank" rel="noopener noreferrer">3.2.5 Change on Request (Level AAA)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G110" class="sc-item" target="_blank" rel="noopener noreferrer">G110: Using an instant client-side redirect</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H76" class="sc-item" target="_blank" rel="noopener noreferrer">H76: Using meta refresh to create an instant client-side redirect</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->4</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/bisz58"><h2 id="id-bisz58"><p>Meta element has no refresh delay (no exception)</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the <code>meta</code> element is not used for delayed redirecting or refreshing.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#interruptions" class="sc-item" target="_blank" rel="noopener noreferrer">2.2.4 Interruptions (Level AAA)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#change-on-request" class="sc-item" target="_blank" rel="noopener noreferrer">3.2.5 Change on Request (Level AAA)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G110" class="sc-item" target="_blank" rel="noopener noreferrer">G110: Using an instant client-side redirect</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H76" class="sc-item" target="_blank" rel="noopener noreferrer">H76: Using meta refresh to create an instant client-side redirect</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/b4f0c3"><h2 id="id-b4f0c3"><p>Meta viewport allows for zoom</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the <code>meta</code> element retains the user agent ability to zoom.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#resize-text" class="sc-item" target="_blank" rel="noopener noreferrer">1.4.4 Resize text (Level AA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->5</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/ffbc54"><h2 id="id-ffbc54"><p>No keyboard shortcut uses only printable characters</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that if keyboard shortcuts are implemented using only printable characters, then there is a mechanism to disable the shortcut, or to remap the shortcut to use one or more non-printable character keys, or the shortcut for a user interface component is only available when that component has focus.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#character-key-shortcuts" class="sc-item" target="_blank" rel="noopener noreferrer">2.1.4 Character Key Shortcuts (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->0</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/8fc3b6"><h2 id="id-8fc3b6"><p>Object element rendering non-text content has non-empty accessible name</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each <code>object</code> element rendering non-text content has a non-empty accessible name.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#non-text-content" class="sc-item" target="_blank" rel="noopener noreferrer">1.1.1 Non-text Content (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->5</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/b33eff"><h2 id="id-b33eff"><p>Orientation of the page is not restricted using CSS transform property</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that page content is not restricted to either <code>landscape</code> or <code>portrait</code> orientation using CSS transform property.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#orientation" class="sc-item" target="_blank" rel="noopener noreferrer">1.3.4 Orientation (Level AA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->4</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/674b10"><h2 id="id-674b10"><p>Role attribute has valid value</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each <code>role</code> attribute has a valid value.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#info-and-relationships" class="sc-item" target="_blank" rel="noopener noreferrer">1.3.1 Info and Relationships (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/aria/ARIA4" class="sc-item" target="_blank" rel="noopener noreferrer">ARIA4: Using a WAI-ARIA role to expose the role of a user interface component</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G108" class="sc-item" target="_blank" rel="noopener noreferrer">G108: Using markup features to expose the name and role, allow user-settable properties to be directly set, and provide notification of changes</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/0ssw9k"><h2 id="id-0ssw9k"><p>Scrollable element is keyboard accessible</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that scrollable elements can be scrolled by keyboard</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#keyboard" class="sc-item" target="_blank" rel="noopener noreferrer">2.1.1 Keyboard (Level A)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#keyboard-no-exception" class="sc-item" target="_blank" rel="noopener noreferrer">2.1.3 Keyboard (No Exception) (Level AAA)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G202" class="sc-item" target="_blank" rel="noopener noreferrer">G202: Ensuring keyboard control for all functionality</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/7d6734"><h2 id="id-7d6734"><p>SVG element with explicit role has non-empty accessible name</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each SVG image element that is explicitly included in the accessibility tree has a non-empty accessible name.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#non-text-content" class="sc-item" target="_blank" rel="noopener noreferrer">1.1.1 Non-text Content (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->5</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/d0f69e"><h2 id="id-d0f69e"><p>Table header cell has assigned cells</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that each table header has assigned cells in a table element.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#info-and-relationships" class="sc-item" target="_blank" rel="noopener noreferrer">1.3.1 Info and Relationships (Level A)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->2</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/efbfc7"><h2 id="id-efbfc7"><p>Text content that changes automatically can be paused, stopped or hidden</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that for any text content that regularly changes automatically, there are instruments to pause, stop, or hide it or to control its changing frequency.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#pause-stop-hide" class="sc-item" target="_blank" rel="noopener noreferrer">2.2.2 Pause, Stop, Hide (Level A)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#cc5" class="sc-item" target="_blank" rel="noopener noreferrer">WCAG Non-Interference</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/09o5cg"><h2 id="id-09o5cg"><p>Text has enhanced contrast</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the highest possible contrast of every text character with its background meets the enhanced contrast requirement.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#contrast-enhanced" class="sc-item" target="_blank" rel="noopener noreferrer">1.4.6 Contrast (Enhanced) (Level AAA)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G17" class="sc-item" target="_blank" rel="noopener noreferrer">G17: Ensuring that a contrast ratio of at least 7:1 exists between text (and images of text) and background behind the text</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G18" class="sc-item" target="_blank" rel="noopener noreferrer">G18: Ensuring that a contrast ratio of at least 4.5:1 exists between text (and images of text) and background behind the text</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->2</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/afw4f7"><h2 id="id-afw4f7"><p>Text has minimum contrast</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the highest possible contrast of every text character with its background meets the minimal contrast requirement.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#contrast-minimum" class="sc-item" target="_blank" rel="noopener noreferrer">1.4.3 Contrast (Minimum) (Level AA)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#contrast-enhanced" class="sc-item" target="_blank" rel="noopener noreferrer">1.4.6 Contrast (Enhanced) (Level AAA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->2</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/eac66b"><h2 id="id-eac66b"><p>Video element auditory content has accessible alternative</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that <code>video</code> elements have an alternative for information conveyed through audio.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#captions-prerecorded" class="sc-item" target="_blank" rel="noopener noreferrer">1.2.2 Captions (Prerecorded) (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G87" class="sc-item" target="_blank" rel="noopener noreferrer">G87: Providing closed captions</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G93" class="sc-item" target="_blank" rel="noopener noreferrer">G93: Providing open (always visible) captions</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H95" class="sc-item" target="_blank" rel="noopener noreferrer">H95: Using the track element to provide captions</a></li></ul></div><div class="meta"><span class="heading">Input Rules:</span><ul><li><a class="sc-item block" href="ab4d13"><p>Video element content is media alternative for text</p></a></li><li><a class="sc-item block" href="f51b46"><p>Video element auditory content has captions</p></a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->2</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/f51b46"><h2 id="id-f51b46"><p>Video element auditory content has captions</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that captions are available for audio information in non-streaming <code>video</code> elements.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G87" class="sc-item" target="_blank" rel="noopener noreferrer">G87: Providing closed captions</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G93" class="sc-item" target="_blank" rel="noopener noreferrer">G93: Providing open (always visible) captions</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/html/H95" class="sc-item" target="_blank" rel="noopener noreferrer">H95: Using the track element to provide captions</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/ab4d13"><h2 id="id-ab4d13"><p>Video element content is media alternative for text</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks non-streaming <code>video</code> is a media alternative for text on the page.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li>This rule is not required for conformance.</li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/c5a4ea"><h2 id="id-c5a4ea"><p>Video element visual content has accessible alternative</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that <code>video</code> elements with audio have an alternative for the video content as audio or as text.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#audio-description-or-media-alternative-prerecorded" class="sc-item" target="_blank" rel="noopener noreferrer">1.2.3 Audio Description or Media Alternative (Prerecorded) (Level A)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#audio-description-prerecorded" class="sc-item" target="_blank" rel="noopener noreferrer">1.2.5 Audio Description (Prerecorded) (Level AA)</a></li><li><a href="https://www.w3.org/TR/WCAG21/#media-alternative-prerecorded" class="sc-item" target="_blank" rel="noopener noreferrer">1.2.8 Media Alternative (Prerecorded) (Level AAA)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G8" class="sc-item" target="_blank" rel="noopener noreferrer">G8: Providing a movie with extended audio descriptions</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G69" class="sc-item" target="_blank" rel="noopener noreferrer">G69: Providing an alternative for time based media</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G78" class="sc-item" target="_blank" rel="noopener noreferrer">G78: Providing a second, user-selectable, audio track that includes audio descriptions</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G173" class="sc-item" target="_blank" rel="noopener noreferrer">G173: Providing a version of a movie with audio descriptions</a></li></ul></div><div class="meta"><span class="heading">Input Rules:</span><ul><li><a class="sc-item block" href="1ea59c"><p>Video element visual content has audio description</p></a></li><li><a class="sc-item block" href="1a02b0"><p>Audio and visuals of video element have transcript</p></a></li><li><a class="sc-item block" href="ab4d13"><p>Video element content is media alternative for text</p></a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/1ea59c"><h2 id="id-1ea59c"><p>Video element visual content has audio description</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that non-streaming <code>video</code> elements have all visual information also contained in the audio.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G8" class="sc-item" target="_blank" rel="noopener noreferrer">G8: Providing a movie with extended audio descriptions</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G78" class="sc-item" target="_blank" rel="noopener noreferrer">G78: Providing a second, user-selectable, audio track that includes audio descriptions</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G173" class="sc-item" target="_blank" rel="noopener noreferrer">G173: Providing a version of a movie with audio descriptions</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/1ec09b"><h2 id="id-1ec09b"><p>Video element visual content has strict accessible alternative</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that <code>video</code> elements with audio have audio description.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#audio-description-prerecorded" class="sc-item" target="_blank" rel="noopener noreferrer">1.2.5 Audio Description (Prerecorded) (Level AA)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G8" class="sc-item" target="_blank" rel="noopener noreferrer">G8: Providing a movie with extended audio descriptions</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G78" class="sc-item" target="_blank" rel="noopener noreferrer">G78: Providing a second, user-selectable, audio track that includes audio descriptions</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G173" class="sc-item" target="_blank" rel="noopener noreferrer">G173: Providing a version of a movie with audio descriptions</a></li></ul></div><div class="meta"><span class="heading">Input Rules:</span><ul><li><a class="sc-item block" href="1ea59c"><p>Video element visual content has audio description</p></a></li><li><a class="sc-item block" href="ab4d13"><p>Video element content is media alternative for text</p></a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/c3232f"><h2 id="id-c3232f"><p>Video element visual-only content has accessible alternative</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that <code>video</code> elements without audio have an alternative available.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#audio-only-and-video-only-prerecorded" class="sc-item" target="_blank" rel="noopener noreferrer">1.2.1 Audio-only and Video-only (Prerecorded) (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G159" class="sc-item" target="_blank" rel="noopener noreferrer">G159: Providing an alternative for time-based media for video-only content</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G166" class="sc-item" target="_blank" rel="noopener noreferrer">G166: Providing audio that describes the important video content and describing it as such</a></li></ul></div><div class="meta"><span class="heading">Input Rules:</span><ul><li><a class="sc-item block" href="fd26cf"><p>Video element visual-only content is media alternative for text</p></a></li><li><a class="sc-item block" href="ee13b5"><p>Video element visual-only content has transcript</p></a></li><li><a class="sc-item block" href="d7ba54"><p>Video element visual-only content has audio track alternative</p></a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/d7ba54"><h2 id="id-d7ba54"><p>Video element visual-only content has audio track alternative</p></h2></a><div class="childContainer"></div></div><div><p>Non-streaming <code>video</code> elements without audio must have an audio alternative.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G166" class="sc-item" target="_blank" rel="noopener noreferrer">G166: Providing audio that describes the important video content and describing it as such</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/ee13b5"><h2 id="id-ee13b5"><p>Video element visual-only content has transcript</p></h2></a><div class="childContainer"></div></div><div><p>Non-streaming <code>video</code> elements without audio must have all visual information available in a transcript.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G159" class="sc-item" target="_blank" rel="noopener noreferrer">G159: Providing an alternative for time-based media for video-only content</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/fd26cf"><h2 id="id-fd26cf"><p>Video element visual-only content is media alternative for text</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks non-streaming silent <code>video</code> is a media alternative for text on the page.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li>This rule is not required for conformance.</li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/2ee8b8"><h2 id="id-2ee8b8"><p>Visible label is part of accessible name</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that interactive elements labeled through content have their visible label as part of their accessible name.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#label-in-name" class="sc-item" target="_blank" rel="noopener noreferrer">2.5.3 Label in Name (Level A)</a></li><li><a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G208" class="sc-item" target="_blank" rel="noopener noreferrer">G208: Including the text of the visible label as part of the accessible name</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->3</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/9e45ec"><h2 id="id-9e45ec"><p>Word spacing in style attributes is not !important</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that the <code>style</code> attribute is not used to prevent adjusting <code>word-spacing</code> by using <code>!important</code>, except if it's at least <code>0.16</code> times the font size.</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#text-spacing" class="sc-item" target="_blank" rel="noopener noreferrer">1.4.12 Text Spacing (Level AA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->2</span></div></div></section></article><article class="ruleCard"><section><div class="ruleHeader"><a href="/rules/59br37"><h2 id="id-59br37"><p>Zoomed text node is not clipped with CSS overflow</p></h2></a><div class="childContainer"></div></div><div><p>This rule checks that text nodes are not unintentionally clipped by overflow, when a page is zoomed to 200% on 1280 by 1024 viewport;</p></div><div class="meta"><span class="heading">Accessibility Requirements Mapping:</span><ul><li><a href="https://www.w3.org/TR/WCAG21/#resize-text" class="sc-item" target="_blank" rel="noopener noreferrer">1.4.4 Resize text (Level AA)</a></li></ul></div><div class="side-notes"><div class="meta"><span class="heading">Complete Implementations: <!-- -->1</span></div></div></section></article></section></section></section></main></section></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/rules/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-4245afbccd88fd6f0b01.js"],"app":["/app-ab0b2e166b078cba7648.js"],"component---src-pages-404-js":["/component---src-pages-404-js-2f5d668d6cf2b4e546e9.js"],"component---src-pages-glossary-js":["/component---src-pages-glossary-js-19f84ff6b1138d25b596.js"],"component---src-pages-index-js":["/component---src-pages-index-js-1c6294bb8b36f45fa835.js"],"component---src-pages-rules-js":["/component---src-pages-rules-js-73ebb55bca0ff38fa352.js"],"component---src-templates-changelog-js":["/component---src-templates-changelog-js-200eee19b1ca69eac2ba.js"],"component---src-templates-default-js":["/component---src-templates-default-js-8de82b13c3c509662894.js"],"component---src-templates-implementations-js":["/component---src-templates-implementations-js-03cfd879b7b95b617a19.js"],"component---src-templates-implementer-incomplete-js":["/component---src-templates-implementer-incomplete-js-d050df4183f131db7a18.js"],"component---src-templates-implementer-js":["/component---src-templates-implementer-js-277643159836f6ec1be7.js"],"component---src-templates-rule-js":["/component---src-templates-rule-js-4898566e69f7edfbf9e6.js"]};/*]]>*/</script><script src="/polyfill-4245afbccd88fd6f0b01.js" nomodule=""></script><script src="/component---src-pages-rules-js-73ebb55bca0ff38fa352.js" async=""></script><script src="/d874871c30ab579c69a585def3286e922215136b-c5b2582de7c8f4cba173.js" async=""></script><script src="/25d64555e9a78814a90948d55d62de27c0529341-6117050f40ac8932cee9.js" async=""></script><script src="/a22cbe4e-92f083a6844fe7b7be81.js" async=""></script><script src="/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/app-ab0b2e166b078cba7648.js" async=""></script><script src="/framework-caaca52af16d464f8089.js" async=""></script><script src="/webpack-runtime-90b402f85379a04cefbd.js" async=""></script></body></html>