From 25faf6c09b334db22bafd63d33edbb7f45d2b1d2 Mon Sep 17 00:00:00 2001 From: Sridhar Bandi Date: Tue, 24 Mar 2020 11:46:19 +0100 Subject: [PATCH 01/13] Class to Choose runner as AXE or HTMLCS --- .../io/github/sridharbandi/util/Runner.java | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/main/java/io/github/sridharbandi/util/Runner.java diff --git a/src/main/java/io/github/sridharbandi/util/Runner.java b/src/main/java/io/github/sridharbandi/util/Runner.java new file mode 100644 index 0000000..6d592ae --- /dev/null +++ b/src/main/java/io/github/sridharbandi/util/Runner.java @@ -0,0 +1,27 @@ +/** + * Copyright (c) 2019 Sridhar Bandi. + *

+ * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + *

+ * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + *

+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package io.github.sridharbandi.util; + +public enum Runner { + AXE, + HTMLCS +} From 7f58ef94e4886661e37041232a2c304e5cf004e4 Mon Sep 17 00:00:00 2001 From: Sridhar Bandi Date: Mon, 30 Mar 2020 22:55:47 +0200 Subject: [PATCH 02/13] Static Constants --- .../io/github/sridharbandi/util/Statik.java | 30 +++++++++++++++++-- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/src/main/java/io/github/sridharbandi/util/Statik.java b/src/main/java/io/github/sridharbandi/util/Statik.java index a9ebe24..7ca13a2 100644 --- a/src/main/java/io/github/sridharbandi/util/Statik.java +++ b/src/main/java/io/github/sridharbandi/util/Statik.java @@ -1,16 +1,16 @@ /** * Copyright (c) 2019 Sridhar Bandi. - * + *

* Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + *

* The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + *

* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -24,8 +24,32 @@ public class Statik { //HTMLCS path public final static String HTMLCS_PATH = "vendor/HTMLCS.js"; + //HTMLCS Script + public final static String HTMLCS_SCRIPT = "var script = document.createElement('script');\n" + + "script.type = 'text/javascript';\n" + + "script.src = 'https://squizlabs.github.io/HTML_CodeSniffer/build/HTMLCS.js';\n" + + "document.head.appendChild(script);"; //HTMLCS Runner public static String RUNNER = "window.HTMLCS_RUNNER.run('%s');"; + //HTMLCS Results + public static String HTMLCS_RESULTS = "return window.HTMLCS.getMessages().map(processIssue);\n" + + "function processIssue(issue) {\n" + + "return {\n" + + "issueType: issue.type,\n" + + "issueCode: issue.code,\n" + + "issueMsg: issue.msg,\n" + + "issueTag: issue.element.nodeName.toLowerCase(),\n" + + "issueElement: htmlElement(issue.element)\n" + + "};\n" + + "}" + + "function htmlElement(ele) {\n" + + "var a = \"\";\n" + + "if (ele.outerHTML) {\n" + + "var o = ele.cloneNode(!0);\n" + + "o.innerHTML = \"...\", a = o.outerHTML\n" + + "}\n" + + "return a;\n" + + "}"; //Freemarker Templates public static final String TEMPLATE_DIR = "ftl"; //Report Encoding From fd7db179de3a2f620d84e600b3919d47ce525ed0 Mon Sep 17 00:00:00 2001 From: Sridhar Bandi Date: Wed, 1 Apr 2020 16:26:38 +0200 Subject: [PATCH 03/13] Changes to HTMLCS --- build.gradle | 2 +- pom.xml | 9 +++- .../io/github/sridharbandi/Accessibility.java | 2 + .../sridharbandi/AccessibilityRunner.java | 49 +++++++++++++------ .../sridharbandi/driver/DriverContext.java | 29 ++++++++++- .../sridharbandi/driver/IDriverContext.java | 6 ++- .../io/github/sridharbandi/modal/Issue.java | 6 +-- .../io/github/sridharbandi/report/Result.java | 2 +- 8 files changed, 82 insertions(+), 23 deletions(-) diff --git a/build.gradle b/build.gradle index 0e8158c..85da987 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,7 @@ plugins { } group 'io.github.sridharbandi' -version '2.0-alpha-2' +version '2.1.2' sourceCompatibility = 1.8 targetCompatibility = 1.8 diff --git a/pom.xml b/pom.xml index 03a8245..bd113cc 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ 4.0.0 io.github.sridharbandi java-a11y - 2.1.1 + 2.1.2 Java a11y Accessibility Automation for Web Apps with Java and Selenium Webdriver @@ -106,5 +106,12 @@ ${mockito.verion} test + + + org.json + json + 20190722 + + diff --git a/src/main/java/io/github/sridharbandi/Accessibility.java b/src/main/java/io/github/sridharbandi/Accessibility.java index f3364ce..ad86964 100644 --- a/src/main/java/io/github/sridharbandi/Accessibility.java +++ b/src/main/java/io/github/sridharbandi/Accessibility.java @@ -21,9 +21,11 @@ */ package io.github.sridharbandi; +import io.github.sridharbandi.util.Runner; import io.github.sridharbandi.util.Standard; public class Accessibility { + public static Runner RUNNER = Runner.HTMLCS; public static Standard STANDARD = Standard.WCAG2AA; public static String REPORT_PATH = System.getProperty("user.dir") + "/accessibility"; public static boolean LOG_RESULTS = true; diff --git a/src/main/java/io/github/sridharbandi/AccessibilityRunner.java b/src/main/java/io/github/sridharbandi/AccessibilityRunner.java index 454920c..bf2f6f0 100644 --- a/src/main/java/io/github/sridharbandi/AccessibilityRunner.java +++ b/src/main/java/io/github/sridharbandi/AccessibilityRunner.java @@ -21,6 +21,7 @@ */ package io.github.sridharbandi; +import com.fasterxml.jackson.core.JsonProcessingException; import io.github.sridharbandi.issues.IErrors; import io.github.sridharbandi.issues.INotices; import io.github.sridharbandi.issues.IWarnings; @@ -37,10 +38,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.UUID; +import java.util.*; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import java.util.stream.Collectors; public class AccessibilityRunner extends Result implements IErrors, IWarnings, INotices { @@ -60,12 +60,33 @@ public void execute() { public void execute(String pageName) { LOG.info("Running Accessibility for {} page", pageName); - executeScript(); - issueList = issueList(); + issueList = executeScript(); + //issueList = issueList(); issues = getIssues(pageName); SaveJson.save(issues, pageName); } + protected List getIssueTechniques(String issueCode) { + Pattern pattern = Pattern.compile("([A-Z]+[0-9]+(,[A-Z]+[0-9]+)*)"); + Matcher matcher = pattern.matcher(issueCode); + LinkedList codes = new LinkedList<>(); + while (matcher.find()) { + String match = matcher.group(); + if (match.contains(",")) { + String[] techniques = match.split(","); + codes.addAll(Arrays.asList(techniques)); + } else { + codes.add(match); + } + } + if (codes.size() != 0) { + codes.remove(0); + } + return codes.stream() + .map(code -> "https://www.w3.org/TR/WCAG20-TECHS/" + code) + .collect(Collectors.toList()); + } + public void setStandard(Standard standard) { Accessibility.STANDARD = standard; } @@ -97,17 +118,17 @@ private Issues getIssues(String reportName) { @Override public int errorCount() { - return getCount(issueList, IssueType.Error); + return getCount(issueList, 1); } @Override public int noticeCount() { - return getCount(issueList, IssueType.Notice); + return getCount(issueList, 3); } @Override public int warningCount() { - return getCount(issueList, IssueType.Warning); + return getCount(issueList, 2); } public void generateHtmlReport() { @@ -125,11 +146,11 @@ public void generateHtmlReport() { map.put("errorcount", issues.getErrors()); map.put("warningcount", issues.getWarnings()); map.put("noticecount", issues.getNotices()); - List errors = issues.getIssues().stream().filter(issue -> issue.getIssueType().equalsIgnoreCase(IssueType.Error.name())).collect(Collectors.toList()); + List errors = issues.getIssues().stream().filter(issue -> issue.getIssueType() == 1).collect(Collectors.toList()); map.put("errors", errors); - List warnings = issues.getIssues().stream().filter(issue -> issue.getIssueType().equalsIgnoreCase(IssueType.Warning.name())).collect(Collectors.toList()); + List warnings = issues.getIssues().stream().filter(issue -> issue.getIssueType() == 2).collect(Collectors.toList()); map.put("warnings", warnings); - List notices = issues.getIssues().stream().filter(issue -> issue.getIssueType().equalsIgnoreCase(IssueType.Notice.name())).collect(Collectors.toList()); + List notices = issues.getIssues().stream().filter(issue -> issue.getIssueType() == 3).collect(Collectors.toList()); map.put("notices", notices); save(tmplPage, map, issues.getReportID()); } @@ -150,9 +171,9 @@ public void generateHtmlReport() { } - private int getCount(List issues, IssueType issueType) { + private int getCount(List issues, int issueType) { List filteredIssues = issues.stream() - .filter(issue -> issue.getIssueType().equalsIgnoreCase(issueType.name())) + .filter(issue -> issue.getIssueType() == issueType) .collect(Collectors.toList()); return filteredIssues.size(); } diff --git a/src/main/java/io/github/sridharbandi/driver/DriverContext.java b/src/main/java/io/github/sridharbandi/driver/DriverContext.java index a7fff34..cf18d4f 100644 --- a/src/main/java/io/github/sridharbandi/driver/DriverContext.java +++ b/src/main/java/io/github/sridharbandi/driver/DriverContext.java @@ -23,6 +23,7 @@ import io.github.sridharbandi.Accessibility; import io.github.sridharbandi.htmlcs.HTMLCS; +import io.github.sridharbandi.modal.Issue; import io.github.sridharbandi.util.Statik; import org.openqa.selenium.Capabilities; import org.openqa.selenium.JavascriptExecutor; @@ -31,6 +32,11 @@ import org.openqa.selenium.support.ui.ExpectedCondition; import org.openqa.selenium.support.ui.WebDriverWait; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.List; + public class DriverContext implements IDriverContext { private HTMLCS htmlcs = HTMLCS.getInstance(); @@ -58,10 +64,29 @@ public long viewPortHeight() { } @Override - public void executeScript() { + public List executeScript() { + waitForLoad(); + javascriptExecutor.executeScript(Statik.HTMLCS_SCRIPT); waitForLoad(); - javascriptExecutor.executeScript(htmlcs.getHTMLCS()); javascriptExecutor.executeScript(String.format(Statik.RUNNER, Accessibility.STANDARD.name())); + waitForLoad(); + Object issuesObj = javascriptExecutor.executeScript(Statik.HTMLCS_RESULTS); + + + + List t_arraylist = new ArrayList<>((Collection)issuesObj); + + + for (int i = 0; i < t_arraylist.size() ; i++) { + Object oo = t_arraylist.get(i); + // com.google.common.collect.Maps maps = com.google.common.collect.Maps.(oo.getClass()); + System.out.println(oo.getClass()); + + } + + List issues = (List) javascriptExecutor.executeScript(Statik.HTMLCS_RESULTS); + issues.forEach(issue -> System.out.println(issue.getIssueElement())); + return issues; } private void waitForLoad() { diff --git a/src/main/java/io/github/sridharbandi/driver/IDriverContext.java b/src/main/java/io/github/sridharbandi/driver/IDriverContext.java index 0b55bcb..87e9bc2 100644 --- a/src/main/java/io/github/sridharbandi/driver/IDriverContext.java +++ b/src/main/java/io/github/sridharbandi/driver/IDriverContext.java @@ -21,12 +21,16 @@ */ package io.github.sridharbandi.driver; +import io.github.sridharbandi.modal.Issue; + +import java.util.List; + public interface IDriverContext { String pageTitle(); long viewPortWidth(); long viewPortHeight(); - void executeScript(); + List executeScript(); String viewPort(); String url(); String device(); diff --git a/src/main/java/io/github/sridharbandi/modal/Issue.java b/src/main/java/io/github/sridharbandi/modal/Issue.java index aba9a03..1f34812 100644 --- a/src/main/java/io/github/sridharbandi/modal/Issue.java +++ b/src/main/java/io/github/sridharbandi/modal/Issue.java @@ -24,7 +24,7 @@ import java.util.List; public class Issue { - private String issueType; + private Long issueType; private String issueCode; private List issueTechniques; private String issueTag; @@ -40,11 +40,11 @@ public void setIssueTechniques(List issueTechniques) { this.issueTechniques = issueTechniques; } - public String getIssueType() { + public Long getIssueType() { return issueType; } - public void setIssueType(String issueType) { + public void setIssueType(Long issueType) { this.issueType = issueType; } diff --git a/src/main/java/io/github/sridharbandi/report/Result.java b/src/main/java/io/github/sridharbandi/report/Result.java index 2dbf7b6..6c68c09 100644 --- a/src/main/java/io/github/sridharbandi/report/Result.java +++ b/src/main/java/io/github/sridharbandi/report/Result.java @@ -54,7 +54,7 @@ protected List issueList() { .map(issue -> { Issue _issue = new Issue(); String[] arrIssue = issue.split("\\|"); - _issue.setIssueType(arrIssue[0].trim()); + _issue.setIssueType(Long.parseLong(arrIssue[0].trim())); _issue.setIssueCode(arrIssue[1]); _issue.setIssueTechniques(getIssueTechniques(arrIssue[1])); _issue.setIssueTag(arrIssue[2]); From ad8ed3a25b4a1d7ba04cc7f0b919b7903db40d6b Mon Sep 17 00:00:00 2001 From: Sridhar Bandi Date: Tue, 7 Apr 2020 10:11:01 +0200 Subject: [PATCH 04/13] Saving JSON report to encoding UTF_8 --- .../io/github/sridharbandi/util/SaveJson.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/main/java/io/github/sridharbandi/util/SaveJson.java b/src/main/java/io/github/sridharbandi/util/SaveJson.java index bae71b1..2242b2f 100644 --- a/src/main/java/io/github/sridharbandi/util/SaveJson.java +++ b/src/main/java/io/github/sridharbandi/util/SaveJson.java @@ -1,16 +1,16 @@ /** * Copyright (c) 2019 Sridhar Bandi. - * + *

* Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + *

* The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + *

* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -29,6 +29,7 @@ import org.slf4j.LoggerFactory; import java.io.IOException; +import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; @@ -42,10 +43,10 @@ public static void save(Issues issues, String reportName) { try { String strResponse = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(issues); String path = getReportPath(true) + "/" + reportName + ".json"; - Files.write(Paths.get(path), strResponse.getBytes()); + Files.write(Paths.get(path), strResponse.getBytes(StandardCharsets.UTF_8)); LOG.info("Saved Accessibility Json Report {} at {}", reportName, path); - if(Accessibility.LOG_RESULTS){ - LOG.info("Accessibility Json \n"+ strResponse); + if (Accessibility.LOG_RESULTS) { + LOG.info("Accessibility Json \n" + strResponse); } } catch (JsonProcessingException e) { e.printStackTrace(); @@ -57,8 +58,8 @@ public static void save(Issues issues, String reportName) { } public static String getReportPath(boolean isJson) { - String folder = isJson? "json": "html"; - String directory = Accessibility.REPORT_PATH + "/report/"+folder; + String folder = isJson ? "json" : "html"; + String directory = Accessibility.REPORT_PATH + "/report/" + folder; Path path = Paths.get(directory); try { if (!Files.exists(path)) { From 42a8eea276e44fa861abccd193bb3cfb25d93728 Mon Sep 17 00:00:00 2001 From: Sridhar Bandi Date: Tue, 7 Apr 2020 12:07:24 +0200 Subject: [PATCH 05/13] Removed HTMLCS js file static reference --- .../io/github/sridharbandi/htmlcs/HTMLCS.java | 60 ------------------- src/main/resources/vendor/HTMLCS.js | 26 -------- .../driver/DriverContextTest.java | 4 +- .../sridharbandi/htmlcs/HTMLCSTest.java | 53 ---------------- .../github/sridharbandi/modal/IssueTest.java | 4 +- 5 files changed, 3 insertions(+), 144 deletions(-) delete mode 100644 src/main/java/io/github/sridharbandi/htmlcs/HTMLCS.java delete mode 100644 src/main/resources/vendor/HTMLCS.js delete mode 100644 src/test/java/io/github/sridharbandi/htmlcs/HTMLCSTest.java diff --git a/src/main/java/io/github/sridharbandi/htmlcs/HTMLCS.java b/src/main/java/io/github/sridharbandi/htmlcs/HTMLCS.java deleted file mode 100644 index a43ec5f..0000000 --- a/src/main/java/io/github/sridharbandi/htmlcs/HTMLCS.java +++ /dev/null @@ -1,60 +0,0 @@ -/** - * Copyright (c) 2019 Sridhar Bandi. - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ -package io.github.sridharbandi.htmlcs; - -import io.github.sridharbandi.util.Statik; -import java.io.IOException; -import java.io.InputStream; -import org.apache.commons.io.IOUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -public class HTMLCS { - - private static Logger LOG = LoggerFactory.getLogger(HTMLCS.class); - - private static HTMLCS instance = null; - - private String htmlcs; - - private HTMLCS(){ - ClassLoader cl = this.getClass().getClassLoader(); - InputStream in = cl.getResourceAsStream(Statik.HTMLCS_PATH); - try { - if (in == null) { - throw new IOException("InputStream failed for: "+Statik.HTMLCS_PATH); - } - htmlcs = IOUtils.toString(in, Statik.ENCODING); - } catch ( IOException e) { - LOG.error("Failed to read the file HTMLCS.js %s", e.getMessage()); - e.printStackTrace(); - } - } - - public static HTMLCS getInstance(){ - return (instance == null)? new HTMLCS() : instance; - } - - public String getHTMLCS(){ - return htmlcs; - } -} diff --git a/src/main/resources/vendor/HTMLCS.js b/src/main/resources/vendor/HTMLCS.js deleted file mode 100644 index fe64029..0000000 --- a/src/main/resources/vendor/HTMLCS.js +++ /dev/null @@ -1,26 +0,0 @@ -/*! html_codesniffer - v2.3.0 - 2019-05-21 */ -/** - * +--------------------------------------------------------------------+ - * | This HTML_CodeSniffer file is Copyright (c) | - * | Squiz Pty Ltd (ABN 77 084 670 600) | - * +--------------------------------------------------------------------+ - * | IMPORTANT: Your use of this Software is subject to the terms of | - * | the Licence provided in the file licence.txt. If you cannot find | - * | this file please contact Squiz (www.squiz.com.au) so we may | - * | provide you a copy. | - * +--------------------------------------------------------------------+ - * - */ -(function (root, factory) { - var exports = factory(); - for (var prop in exports) { - root[prop] = exports[prop]; - } -}(this, function () { - var _global = { - translation: {} - }; - -_global.translation.cn={auditor_name:"HTML_CodeSniffer",auditor_using_standard:"使用标准",auditor_standards:"标准",auditor_code_snippet:"代码片断",auditor_close:"关闭",auditor_select_types:"选择要包含在报告中的问题类型",auditor_home:"首页",auditor_view_report:"查看报告",auditor_report:"报告",auditor_back_to_report:"回到报告",auditor_previous_issue:"上一个问题",auditor_next_issue:"下一个问题",auditor_issue:"问题",auditor_of:"总共",auditor_errors:"错误",auditor_error:"错误",auditor_warnings:"警告",auditor_warning:"警告",auditor_notices:"提醒",auditor_notice:"提醒",auditor_toggle_display_of:"切换显示",auditor_messages:"消息",auditor_unable_to_point:"无法通过这个问题指向关联的元素。",auditor_unable_to_point_entire:"无法指向这个问题,因为它与整个文档有关。",auditor_unable_to_point_removed:"无法指向这个元素,因为自报告生成以来它已经从文档中被移除了。",auditor_unable_to_point_outside:"无法指向这个元素,因为它位于文档的body元素外。",auditor_unable_to_point_hidden:"无法指向这个元素,因为它已经从视图中隐藏,或它没有一个视觉表现。",auditor_point_to_element:"指向这个元素",auditor_unsupported_browser:"这个代码片断功能在这个浏览器中已经不被支持",auditor_page:"页",auditor_updated_to:"HTML_CodeSniffer 已更新到版本",auditor_view_the_changelog:"查看更新日志",auditor_success_criterion:"成功标准",auditor_suggested_techniques:"建议技巧",auditor_applies_entire_document:"应用于全部文档","1_1_1_H30.2":"Img 元素是链接的唯一内容,但是缺少了 alt 文本,alt 文本应该描述链接的用途","1_1_1_H67.1":"alt 文本为空的 Img 元素必须具有缺席或空 title 属性","1_1_1_H67.2":"标记Img元素,使其被辅助技术忽略.","1_1_1_H37":"缺少alt属性的Img元素。使用alt属性指定一个短的替代文本","1_1_1_G94.Image":"确保img元素的alt文本具有与图像相同的用途和显示相同的信息。","1_1_1_H36":"图像提交按钮缺少alt属性。使用alt属性指定描述按钮函数的文本替代方案。","1_1_1_G94.Button":"确保图像提交按钮的alt文本标识按钮的用途。","1_1_1_H24":"图像映射中缺少alt属性的Area元素。每个area元素必须有一个描述图像映射区域功能的文本选项。","1_1_1_H24.2":"确保area元素的文本替代与它引用的图像映射图像部分的用途相同。","1_1_1_G73,G74":"如果无法在短文本替代中完整描述此图像,请确保也提供长文本替代,例如在正文文本中或通过链接。","1_1_1_H2.EG5":"链接内的Img元素不能使用与链接的文本内容重复的alt文本。","1_1_1_H2.EG4":"当链接旁边的链接包含链接文本时,链接内的Img元素的alt文本为空或缺失。考虑合并这些链接。","1_1_1_H2.EG3":"链接内的Img元素不能使用与旁边的文本链接内容重复的alt文本。","1_1_1_H53,ARIA6":"对象元素必须在耗尽所有其他替代后包含文本替代。","1_1_1_G94,G92.Object,ARIA6":"检查是否可以为具有相同目的和显示相同信息的非文本内容提供短文本(如果合适,也可以是长文本)替代方案。","1_1_1_H35.3":"对于不支持Applet元素的浏览器,Applet元素必须在元素的主体中包含一个文本替代。","1_1_1_H35.2":"Applet元素必须包含alt属性,以便为支持该元素但无法加载Applet的浏览器提供文本替代。","1_1_1_G94,G92.Applet":"检查是否可以为具有相同目的和显示相同信息的非文本内容提供短文本(如果合适,也可以是长文本)替代方案。","1_2_1_G158":"如果此嵌入式对象仅包含预录制的音频,且不作为文本内容的替代提供,请检查是否提供了替代文本版本。","1_2_1_G159,G166":"如果此嵌入式对象仅包含预录制的视频,且不作为文本内容的替代提供,则请检查是否提供了替代文本版本,或提供了表示等效信息的音轨。","1_2_2_G87,G93":"如果此嵌入式对象包含预录制的同步媒体,且未作为文本内容的替代提供,请检查是否为音频内容提供了标题。","1_2_3_G69,G78,G173,G8":"如果这个嵌入的对象包含预先录制的同步媒体,并且没有作为文本内容的替代提供,请检查是否提供了视频的音频描述和/或内容的替代文本版本。","1_2_4_G9,G87,G93":"如果此嵌入式对象包含同步媒体,请检查是否为实时音频内容提供标题。","1_2_5_G78,G173,G8":"如果此嵌入式对象包含预录制的同步媒体,请检查是否为其视频内容提供了音频描述。","1_2_6_G54,G81":"如果此嵌入式对象包含预录制的同步媒体,请检查是否为其音频提供了手语解释。","1_2_7_G8":"如果这个嵌入的对象包含同步媒体,并且前台音频中的暂停不足以让音频描述传递预录制视频的感觉,那么请检查是否提供了扩展的音频描述,无论是通过脚本还是其他版本。","1_2_8_G69,G159":"如果这个嵌入的对象包含预先录制的同步媒体或视频内容,请检查是否提供了内容的另一个文本版本。","1_2_9_G150,G151,G157":"如果这个嵌入的对象包含实时音频内容,请检查是否提供了内容的另一个文本版本。","1_3_1_F92,ARIA4":"此元素的角色是“表示”,但包含具有语义意义的子元素。","1_3_1_H44.NonExistent":"此标签的“for”属性包含文档中不存在的ID。","1_3_1_H44.NonExistentFragment":"此标签的“for”属性包含文档片段中不存在的ID。","1_3_1_H44.NotFormControl":'这个label的 "for"属性包含一个非表单控件元素的ID。确保您为预期的元素输入了正确的ID。',"1_3_1_H65":"此表单控件的“title”属性为空或仅包含空格。为了标签测试的目的,它将被忽略。","1_3_1_ARIA6":"此表单控件具有“aria-label”属性,该属性为空或仅包含空格。为了标签测试的目的,它将被忽略。","1_3_1_ARIA16,ARIA9":'此表单控件包含一个aria-labelledby属性, 但是它包含一个ID"{{id}}" 它不存在于元素中。出于标签测试的目的,aria-labelledby属性将被忽略。',"1_3_1_F68.Hidden":"这个隐藏的表单字段以某种方式进行了标记。不需要为隐藏的表单字段添加标签。","1_3_1_F68.HiddenAttr":"这个表单字段打算隐藏(使用“hidden”属性),但也以某种方式标记。不需要为隐藏的表单字段添加标签。","1_3_1_F68":"这个表单字段应该以某种方式进行标记。使用label元素(带有“for”属性或围绕表单字段),或者适当使用“title”、“aria-label”或“aria-labelledby”属性。","1_3_1_H49.":"在HTML5中使用的表示标记已经过时。","1_3_1_H49.AlignAttr":"对齐属性。","1_3_1_H49.Semantic":"语义标记应该用于标记强调的或特殊的文本,以便通过编程确定文本。","1_3_1_H49.AlignAttr.Semantic":"语义标记应该用于标记强调的或特殊的文本,以便通过编程确定文本。","1_3_1_H42":"如果要将此内容用作标题,则应使用标题标记。","1_3_1_H63.3":"表单元格的作用域属性无效。有效值是row、col、rowgroup或colgroup。","1_3_1_H63.2":"td元素上作为其他元素标题的作用域属性在HTML5中已经过时了。使用th元素代替。","1_3_1_H43.ScopeAmbiguous":"元素的作用域属性在具有多级标题的表中是不明确的。在td元素上使用headers属性。","1_3_1_H43.IncorrectAttr":"此td元素上不正确的headers属性。期望的“{{expected}}”,但发现“{{actual}}”","1_3_1_H43.HeadersRequired":"td元素与其关联的th元素之间的关系没有定义。由于该表有多个层次的th元素,因此必须在td元素上使用headers属性。","1_3_1_H43.MissingHeaderIds":"并非该表中的所有th元素都包含id属性。这些单元格应该包含id,以便td元素的header属性可以引用它们。","1_3_1_H43.MissingHeadersAttrs":"并非此表中的所有td元素都包含header属性。每个headers属性应该列出与该单元格关联的所有th元素的id。","1_3_1_H43,H63":"td元素与其关联的th元素之间的关系没有定义。要么在th元素上使用scope属性,要么在td元素上使用headers属性。","1_3_1_H63.1":"并非该表中的所有th元素都具有范围属性。这些单元格应该包含一个范围属性来标识它们与td元素的关联。","1_3_1_H73.3.LayoutTable":"此表似乎用于布局,但包含摘要属性。布局表不能包含摘要属性,如果提供,则必须为空。","1_3_1_H39,H73.4":"如果此表是一个数据表,并且同时具有summary属性和标题元素,则该摘要不应复制标题。","1_3_1_H73.3.Check":"如果该表是一个数据表,请检查summary属性是否描述了该表的组织或解释了如何使用该表。","1_3_1_H73.3.NoSummary":"如果这个表是一个数据表,可以考虑使用table元素的summary属性来概述这个表。","1_3_1_H39.3.LayoutTable":"此表似乎用于布局,但包含标题元素。布局表不能包含标题。","1_3_1_H39.3.Check":"如果这个表是一个数据表,请检查标题元素是否准确地描述了这个表。","1_3_1_H39.3.NoCaption":"如果这个表是一个数据表,可以考虑使用表元素的标题元素来标识这个表。","1_3_1_H71.NoLegend":"Fieldset不包含传奇元素。所有字段集都应该包含一个描述字段组描述的legend元素。","1_3_1_H85.2":"如果此选择列表包含相关选项组,则应将其与optgroup分组。","1_3_1_H71.SameName":"如果这些单选按钮或复选框需要进一步的组级描述,则它们应该包含在fieldset元素中。","1_3_1_H48.1":"这个内容看起来像是使用纯文本模拟一个无序列表。如果是这样,用ul元素标记此内容将向文档添加适当的结构信息。","1_3_1_H48.2":"这个内容看起来像是使用纯文本模拟有序列表。如果是这样,用ol元素标记此内容将向文档添加适当的结构信息。","1_3_1_G141_a":"标题结构没有逻辑嵌套。这个h{{headingNum}}元素似乎是主要的文档标题,因此应该是h1元素。","1_3_1_G141_b":"标题结构没有逻辑嵌套。这个h{{headingNum}}元素应该是一个正确嵌套的h{{properHeadingNum}}。","1_3_1_H42.2":"没有内容的标题标签。不打算作为标题的文本不应该用标题标记。","1_3_1_H48":"如果此元素包含导航部分,建议将其标记为列表。","1_3_1_LayoutTable":"此表似乎是一个布局表。如果要将其改为数据表,请确保使用th元素标识头单元格。","1_3_1_DataTable":"这个表似乎是一个数据表。如果要将其改为布局表,请确保没有th元素,没有摘要或标题。","1_3_2_G57":"当线性化时,检查内容是否按有意义的顺序排列,例如禁用样式表时。","1_3_3_G96":"在提供理解内容的指令时,不要仅依赖感官特征(如形状、大小或位置)来描述对象。","1_4_1_G14,G18":"检查仅使用颜色传达的任何信息在文本或其他视觉线索中是否可用。","1_4_2_F23":"如果此元素包含自动播放超过3秒的音频,请检查是否具有暂停、停止或静音音频的功能。","1_4_3_F24.BGColour":"检查此元素是否具有继承的前景颜色,以补充相应的内联背景颜色或图像。","1_4_3_F24.FGColour":"检查此元素是否具有继承的背景颜色或图像,以补充相应的内联前景颜色。","1_4_3_G18_or_G145.Abs":"此元素绝对定位,无法确定背景颜色。确保文本与背景中所有被覆盖部分的对比度至少为{{required}}:1。","1_4_3_G18_or_G145.BgImage":"这个元素的文本被放置在背景图像上。确保文本与图像所有覆盖部分的对比度至少为{{required}}:1。","1_4_3_G18_or_G145.Alpha":"此元素的文本或背景包含透明度。确保文本和背景之间的对比度至少为{{required}}:1。","1_4_3_G18_or_G145.Fail":"此元素在此一致性级别上的对比度不足。期望的对比度比至少为{{required}}:1,但是该元素中的文本的对比度比为{{value}}:1。","1_4_3_G18_or_G145.Fail.Recomendation":"建议:改变","1_4_3_G18_or_G145.Fail.Recomendation.Text":"文本颜色","1_4_3_G18_or_G145.Fail.Recomendation.Background":"背景","1_4_4_G142":"检查文本可以在不使用辅助技术的情况下调整大小,最高可达200%,而不会丢失内容或功能。","1_4_5_G140,C22,C30.AALevel":"如果所使用的技术可以达到视觉呈现的效果,请检查文字是用来传达信息而不是文字的图像,除非文字的图像对所传达的信息是必不可少的,或者可以根据用户的需求进行视觉定制。","1_4_6_G18_or_G17.Abs":"此元素绝对定位,无法确定背景颜色。确保文本与背景中所有被覆盖部分的对比度至少为{{required}}:1。","1_4_6_G18_or_G17.BgImage":"这个元素的文本被放置在背景图像上。确保文本与图像所有覆盖部分的对比度至少为{{required}}:1。","1_4_6_G18_or_G17.Fail":"此元素在此一致性级别上的对比度不足。期望的对比度比至少为{{required}}:1,但是该元素中的文本的对比度比为{{value}}:1。","1_4_6_G18_or_G17.Fail.Recomendation":"建议:改变","1_4_6_G18_or_G17.Fail.Recomendation.Text":"文本颜色","1_4_6_G18_or_G17.Fail.Recomendation.Background":"背景","1_4_7_G56":"对于这个元素中主要是语音(如旁白)的预先录制的纯音频内容,任何背景声音都应该是可哑的,或者至少比语音低20分贝(或大约4倍)。","1_4_8_G148,G156,G175":"检查是否有一种机制可供用户通过Web页面或浏览器为文本块选择前景和背景颜色。","1_4_8_H87,C20":"检查是否存在一种机制,将文本块的宽度减少到不超过80个字符(或中文、日文或韩文的40个字符)。","1_4_8_C19,G172,G169":"检查文本块是否完全对齐——也就是说,在左边缘和右边缘——或者存在一种删除完全对齐的机制。","1_4_8_G188,C21":"检查文本块中的行间距在段落中至少为150%,段落间距至少为行间距的1.5倍,或者有实现这一点的机制。","1_4_8_H87,G146,C26":"检查文本是否可以在不使用辅助技术的情况下调整大小至200%,而不需要用户在全屏窗口上水平滚动。","1_4_9_G140,C22,C30.NoException":"检查文本的图像是否仅用于纯装饰,或者文本的特定表示对于所传递的信息是必不可少的。","2_1_1_G90":"确保事件处理程序为此元素提供的功能可通过键盘获得","2_1_1_SCR20.DblClick":"确保通过键盘双击此元素提供的功能可用。","2_1_1_SCR20.MouseOver":"确保通过键盘在此元素上单击所提供的功能可用;例如,使用焦点事件。","2_1_1_SCR20.MouseOut":"确保鼠标移出此元素所提供的功能可通过键盘获得;例如,使用blur事件。","2_1_1_SCR20.MouseMove":"确保通过键盘移动此元素上的鼠标所提供的功能可用。","2_1_1_SCR20.MouseDown":"确保通过键盘在此元素上按下鼠标所提供的功能可用;例如,使用keydown事件。","2_1_1_SCR20.MouseUp":"确保通过键盘在此元素上单击鼠标所提供的功能可用;例如,使用keyup事件。","2_1_2_F10":"检查这个applet或插件是否能够在使用键盘时将焦点从自身移开。","2_2_1_F40.2":"元刷新标记用于重定向到另一个页面,时间限制不为零。用户无法控制这个时间限制。","2_2_1_F41.2":"用于刷新当前页面的元刷新标记。用户无法控制此刷新的时间限制。","2_2_2_SCR33,SCR22,G187,G152,G186,G191":"如果内容的任何部分移动、滚动或闪烁超过5秒,或自动更新,请检查是否有可用的机制来暂停、停止或隐藏内容。","2_2_2_F4":"确保有一种机制可以在5秒内停止这个闪烁元素。","2_2_2_F47":"Blink元素不能满足眨眼信息在5秒内停止的要求。","2_2_3_G5":"除了非交互式同步媒体和实时事件外,检查时间不是事件或活动的重要组成部分。","2_2_4_SCR14":"检查所有中断(包括对内容的更新)都可以被用户延迟或抑制,紧急情况除外。","2_2_5_G105,G181":"如果此Web页面是具有非活动时间限制的一组Web页面的一部分,请检查经过身份验证的用户在重新进行身份验证后是否可以继续该活动而不会丢失数据。","2_3_1_G19,G176":"检查内容的任何组件在任何1秒周期内闪烁的次数都不超过3次,或者任何闪烁区域的大小都不够小。","2_3_2_G19":"检查内容的任何组件在任何1秒内闪烁的次数都不超过3次。","2_4_1_H64.1":"Iframe元素需要一个非空的title属性来标识框架。","2_4_1_H64.2":"检查此元素的title属性是否包含标识框架的文本。","2_4_1_G1,G123,G124,H69":"确保可以绕过任何通用导航元素;例如,通过使用跳过链接、头元素或ARIA地标角色。","2_4_1_G1,G123,G124.NoSuchID":"这个链接指向文档中一个名为“{{id}}”的锚,但是不存在同名的锚。","2_4_1_G1,G123,G124.NoSuchIDFragment":"这个链接指向文档中一个名为“{{id}}”的锚,但是在测试的片段中不存在同名的锚。","2_4_2_H25.1.NoHeadEl":"没有标题部分可以放置描述性标题元素。","2_4_2_H25.1.NoTitleEl":"应该使用head部分中的非空title元素为文档提供标题。","2_4_2_H25.1.EmptyTitle":"标题部分中的title元素应该是非空的。","2_4_2_H25.2":"检查title元素是否描述了文档。","2_4_3_H4.2":"如果使用tabindex,请检查tabindex属性指定的选项卡顺序是否遵循内容中的关系。","2_4_4_H77,H78,H79,H80,H81,H33":"检查链接文本与以编程方式确定的链接上下文或其title属性相结合,以确定链接的用途。","2_4_4_H77,H78,H79,H80,H81":"检查链接文本与以编程方式确定的链接上下文的组合是否标识了链接的用途。","2_4_5_G125,G64,G63,G161,G126,G185":"如果此Web页面不是线性流程的一部分,请检查在一组Web页面中定位此Web页面的方法是否不止一种。","2_4_6_G130,G131":"检查标题和标签是否描述了主题或目的。","2_4_7_G149,G165,G195,C15,SCR31":"检查至少有一种操作模式,可以将键盘焦点指示器可视地定位在用户界面控件上。","2_4_8_H59.1":"链接元素只能位于文档的头部部分。","2_4_8_H59.2a":"Link元素缺少标识链接类型的非空rel属性。","2_4_8_H59.2b":"Link元素缺少一个指向被链接资源的非空href属性。","2_4_9_H30":"检查链接的文本是否描述了链接的目的。","3_1_1_H57.2":"html元素应该具有描述文档语言的lang或xml:lang属性。","3_1_1_H57.3.Lang":"文档元素的lang属性中指定的语言似乎不是格式良好的。","3_1_1_H57.3.XmlLang":"文档元素的xml:lang属性中指定的语言似乎不是格式良好的。","3_1_2_H58":"确保在适当的情况下,使用元素上的lang和/或xml:lang属性标记语言中的任何更改。","3_1_2_H58.1.Lang":"此元素的lang属性中指定的语言似乎不是格式良好的。","3_1_2_H58.1.XmlLang":"此元素的xml:lang属性中指定的语言似乎不是格式良好的。","3_1_3_H40,H54,H60,G62,G70":"检查是否有一种机制可用于识别以不寻常或受限方式使用的单词或短语的特定定义,包括习语和行话。","3_1_4_G102,G55,G62,H28,G97":"检查是否有识别缩写的展开形式或含义的机制。","3_1_5_G86,G103,G79,G153,G160":"如果内容要求阅读能力高于初中教育水平,则应提供补充内容或替代版本。","3_1_6_H62.1.HTML5":"Ruby元素不包含rt元素,rt元素包含其正文的发音信息。","3_1_6_H62.1.XHTML11":"Ruby元素不包含rt元素,rt元素包含rb元素内文本的发音信息。","3_1_6_H62.2":"Ruby元素不包含rp元素,rp元素为不支持Ruby文本的浏览器提供额外的标点符号。","3_2_1_G107":"检查当这个输入字段接收到焦点时,没有发生上下文更改。","3_2_2_H32.2":"此表单不包含提交按钮,这将为无法使用键盘提交表单的用户带来问题。提交按钮是类型属性为“Submit”或“image”的输入元素,或类型为“Submit”或省略/无效的按钮元素。","3_2_3_G61":"检查在多个Web页面上重复的导航机制在每次重复时都以相同的相对顺序出现,除非用户发起了更改。","3_2_4_G197":"检查在此Web页面中具有相同功能的组件是否在其所属的Web页面集中一致地标识。","3_2_5_H83.3":"检查此链接的链接文本是否包含指示该链接将在新窗口中打开的信息。","3_3_1_G83,G84,G85":"如果在此表单中自动检测到输入错误,请检查错误项是否已标识,并以文本形式向用户描述错误。","3_3_2_G131,G89,G184,H90":"检查此表单中是否为用户输入提供了描述性标签或说明(包括所需字段)。","3_3_3_G177":"请检查此表单是否提供了对用户输入错误的建议更正,除非它会危及内容的安全性或用途。","3_3_4_G98,G99,G155,G164,G168.LegalForms":"如果此表单将用户绑定到财务或法律承诺、修改/删除用户可控制的数据或提交测试响应,请确保提交是可逆的、检查输入错误和/或由用户确认的。","3_3_5_G71,G184,G193":"在web页面和/或控件级别检查此表单是否提供上下文敏感的帮助。","3_3_6_G98,G99,G155,G164,G168.AllForms":"请检查提交到此表单的内容是否可逆,是否有输入错误,以及/或是否得到用户的确认。","4_1_1_F77":"在网页上找到重复的id属性值“{{id}}”。","4_1_2_H91.A.Empty":"锚元素,具有ID,但没有href或链接文本。考虑将其ID移动到父元素或附近的元素。","4_1_2_H91.A.EmptyWithName":"锚元素,具有名称属性,但没有href或链接文本。考虑将name属性移动为父元素或附近元素的ID。","4_1_2_H91.A.EmptyNoId":"没有链接内容、没有名称和/或ID属性的锚元素。","4_1_2_H91.A.NoHref":"锚元素不应用于定义页内链接目标。如果不将ID用于其他目的(如CSS或脚本),可以考虑将其移动到父元素。","4_1_2_H91.A.Placeholder":"找到带有链接内容的锚元素,但未提供href、ID或name属性。","4_1_2_H91.A.NoContent":"找到具有有效href属性的锚元素,但未提供链接内容。","4_1_2_input_element":"输入元素","4_1_2_role_of_button":"元素的作用是“按钮”,但是","4_1_2_element_content":"元素内容","4_1_2_element":"元素","4_1_2_msg_pattern":"这个{{msgNodeType}}没有可访问性API可用的名称。有效的名称是:{{builtAttrs}}。","4_1_2_msg_pattern2":"这个{{msgNodeType}}没有可访问性API可用的值。","4_1_2_msg_add_one":"通过向元素添加内容来添加一个。","4_1_2_msg_pattern3":"这个{{msgNodeType}}没有初始选择的选项。根据HTML版本的不同,公开给可访问性API的值可能是未定义的。","4_1_2_value_exposed_using_attribute":"使用{{requiredValue}}属性公开一个值。","4_1_2_value_exposed_using_element":"使用{{requiredValue}}元素公开一个值。"},_global.translation.en={auditor_name:"HTML_CodeSniffer by Squiz",auditor_using_standard:"Using standard",auditor_standards:"Standards",auditor_code_snippet:"Code Snippet",auditor_close:"Close",auditor_select_types:"Select the types of issues to include in the report",auditor_home:"Home",auditor_view_report:"View Report",auditor_report:"Report",auditor_back_to_report:"Back to Report",auditor_previous_issue:"Previous Issue",auditor_next_issue:"Next Issue",auditor_issue:"Issue",auditor_of:"of",auditor_errors:"Errors",auditor_error:"Error",auditor_warnings:"Warnings",auditor_warning:"Warning",auditor_notices:"Notices",auditor_notice:"Notice",auditor_toggle_display_of:"Toggle display of",auditor_messages:"messages",auditor_unable_to_point:"Unable to point to the element associated with this issue.",auditor_unable_to_point_entire:"Unable to point to this issue, as it relates to the entire document.",auditor_unable_to_point_removed:"Unable to point to this element as it has been removed from the document since the report was generated.",auditor_unable_to_point_outside:"Unable to point to this element because it is located outside the document's body element.",auditor_unable_to_point_hidden:"Unable to point to this element because it is hidden from view, or does not have a visual representation.",auditor_point_to_element:"Point to Element",auditor_unsupported_browser:"The code snippet functionality is not supported in this browser.",auditor_page:"Page",auditor_updated_to:"HTML_CodeSniffer has been updated to version",auditor_view_the_changelog:"View the changelog",auditor_success_criterion:"Success Criterion",auditor_suggested_techniques:"Suggested Techniques",auditor_applies_entire_document:"This applies to the entire document","1_1_1_H30.2":"Img element is the only content of the link, but is missing alt text. The alt text should describe the purpose of the link.","1_1_1_H67.1":"Img element with empty alt text must have absent or empty title attribute.","1_1_1_H67.2":"Img element is marked so that it is ignored by Assistive Technology.","1_1_1_H37":"Img element missing an alt attribute. Use the alt attribute to specify a short text alternative.","1_1_1_G94.Image":"Ensure that the img element's alt text serves the same purpose and presents the same information as the image.","1_1_1_H36":"Image submit button missing an alt attribute. Specify a text alternative that describes the button's function, using the alt attribute.","1_1_1_G94.Button":"Ensure that the image submit button's alt text identifies the purpose of the button.","1_1_1_H24":"Area element in an image map missing an alt attribute. Each area element must have a text alternative that describes the function of the image map area.","1_1_1_H24.2":"Ensure that the area element's text alternative serves the same purpose as the part of image map image it references.","1_1_1_G73,G74":"If this image cannot be fully described in a short text alternative, ensure a long text alternative is also available, such as in the body text or through a link.","1_1_1_H2.EG5":"Img element inside a link must not use alt text that duplicates the text content of the link.","1_1_1_H2.EG4":"Img element inside a link has empty or missing alt text when a link beside it contains link text. Consider combining the links.","1_1_1_H2.EG3":"Img element inside a link must not use alt text that duplicates the content of a text link beside it.","1_1_1_H53,ARIA6":"Object elements must contain a text alternative after all other alternatives are exhausted.","1_1_1_G94,G92.Object,ARIA6":"Check that short (and if appropriate, long) text alternatives are available for non-text content that serve the same purpose and present the same information.","1_1_1_H35.3":"Applet elements must contain a text alternative in the element's body, for browsers without support for the applet element.","1_1_1_H35.2":"Applet elements must contain an alt attribute, to provide a text alternative to browsers supporting the element but are unable to load the applet.","1_1_1_G94,G92.Applet":"Check that short (and if appropriate, long) text alternatives are available for non-text content that serve the same purpose and present the same information.","1_2_1_G158":"If this embedded object contains pre-recorded audio only, and is not provided as an alternative for text content, check that an alternative text version is available.","1_2_1_G159,G166":"If this embedded object contains pre-recorded video only, and is not provided as an alternative for text content, check that an alternative text version is available, or an audio track is provided that presents equivalent information.","1_2_2_G87,G93":"If this embedded object contains pre-recorded synchronised media and is not provided as an alternative for text content, check that captions are provided for audio content.","1_2_3_G69,G78,G173,G8":"If this embedded object contains pre-recorded synchronised media and is not provided as an alternative for text content, check that an audio description of its video, and/or an alternative text version of the content is provided.","1_2_4_G9,G87,G93":"If this embedded object contains synchronised media, check that captions are provided for live audio content.","1_2_5_G78,G173,G8":"If this embedded object contains pre-recorded synchronised media, check that an audio description is provided for its video content.","1_2_6_G54,G81":"If this embedded object contains pre-recorded synchronised media, check that a sign language interpretation is provided for its audio.","1_2_7_G8":"If this embedded object contains synchronised media, and where pauses in foreground audio is not sufficient to allow audio descriptions to convey the sense of pre-recorded video, check that an extended audio description is provided, either through scripting or an alternate version.","1_2_8_G69,G159":"If this embedded object contains pre-recorded synchronised media or video-only content, check that an alternative text version of the content is provided.","1_2_9_G150,G151,G157":"If this embedded object contains live audio-only content, check that an alternative text version of the content is provided.","1_3_1_F92,ARIA4":'This element\'s role is "presentation" but contains child elements with semantic meaning.',"1_3_1_H44.NonExistent":'This label\'s "for" attribute contains an ID that does not exist in the document.',"1_3_1_H44.NonExistentFragment":'This label\'s "for" attribute contains an ID that does not exist in the document fragment.',"1_3_1_H44.NotFormControl":'This label\'s "for" attribute contains an ID for an element that is not a form control. Ensure that you have entered the correct ID for the intended element.',"1_3_1_H65":'This form control has a "title" attribute that is empty or contains only spaces. It will be ignored for labelling test purposes.',"1_3_1_ARIA6":'This form control has an "aria-label" attribute that is empty or contains only spaces. It will be ignored for labelling test purposes.',"1_3_1_ARIA16,ARIA9":'This form control contains an aria-labelledby attribute, however it includes an ID "{{id}}" that does not exist on an element. The aria-labelledby attribute will be ignored for labelling test purposes.',"1_3_1_F68.Hidden":"This hidden form field is labelled in some way. There should be no need to label a hidden form field.","1_3_1_F68.HiddenAttr":'This form field is intended to be hidden (using the "hidden" attribute), but is also labelled in some way. There should be no need to label a hidden form field.',"1_3_1_F68":'This form field should be labelled in some way. Use the label element (either with a "for" attribute or wrapped around the form field), or "title", "aria-label" or "aria-labelledby" attributes as appropriate.',"1_3_1_H49.":"Presentational markup used that has become obsolete in HTML5.","1_3_1_H49.AlignAttr":"Align attributes.","1_3_1_H49.Semantic":"Semantic markup should be used to mark emphasised or special text so that it can be programmatically determined.","1_3_1_H49.AlignAttr.Semantic":"Semantic markup should be used to mark emphasised or special text so that it can be programmatically determined.","1_3_1_H42":"Heading markup should be used if this content is intended as a heading.","1_3_1_H63.3":"Table cell has an invalid scope attribute. Valid values are row, col, rowgroup, or colgroup.","1_3_1_H63.2":"Scope attributes on td elements that act as headings for other elements are obsolete in HTML5. Use a th element instead.","1_3_1_H43.ScopeAmbiguous":"Scope attributes on th elements are ambiguous in a table with multiple levels of headings. Use the headers attribute on td elements instead.","1_3_1_H43.IncorrectAttr":'Incorrect headers attribute on this td element. Expected "{{expected}}" but found "{{actual}}"',"1_3_1_H43.HeadersRequired":"The relationship between td elements and their associated th elements is not defined. As this table has multiple levels of th elements, you must use the headers attribute on td elements.","1_3_1_H43.MissingHeaderIds":"Not all th elements in this table contain an id attribute. These cells should contain ids so that they may be referenced by td elements' headers attributes.","1_3_1_H43.MissingHeadersAttrs":"Not all td elements in this table contain a headers attribute. Each headers attribute should list the ids of all th elements associated with that cell.","1_3_1_H43,H63":"The relationship between td elements and their associated th elements is not defined. Use either the scope attribute on th elements, or the headers attribute on td elements.","1_3_1_H63.1":"Not all th elements in this table have a scope attribute. These cells should contain a scope attribute to identify their association with td elements.","1_3_1_H73.3.LayoutTable":"This table appears to be used for layout, but contains a summary attribute. Layout tables must not contain summary attributes, or if supplied, must be empty.","1_3_1_H39,H73.4":"If this table is a data table, and both a summary attribute and a caption element are present, the summary should not duplicate the caption.","1_3_1_H73.3.Check":"If this table is a data table, check that the summary attribute describes the table's organization or explains how to use the table.","1_3_1_H73.3.NoSummary":"If this table is a data table, consider using the summary attribute of the table element to give an overview of this table.","1_3_1_H39.3.LayoutTable":"This table appears to be used for layout, but contains a caption element. Layout tables must not contain captions.","1_3_1_H39.3.Check":"If this table is a data table, check that the caption element accurately describes this table.","1_3_1_H39.3.NoCaption":"If this table is a data table, consider using a caption element to the table element to identify this table.","1_3_1_H71.NoLegend":"Fieldset does not contain a legend element. All fieldsets should contain a legend element that describes a description of the field group.","1_3_1_H85.2":"If this selection list contains groups of related options, they should be grouped with optgroup.","1_3_1_H71.SameName":"If these radio buttons or check boxes require a further group-level description, they should be contained within a fieldset element.","1_3_1_H48.1":"This content looks like it is simulating an unordered list using plain text. If so, marking up this content with a ul element would add proper structure information to the document.","1_3_1_H48.2":"This content looks like it is simulating an ordered list using plain text. If so, marking up this content with an ol element would add proper structure information to the document.","1_3_1_G141_a":"The heading structure is not logically nested. This h{{headingNum}} element appears to be the primary document heading, so should be an h1 element.","1_3_1_G141_b":"The heading structure is not logically nested. This h{{headingNum}} element should be an h{{properHeadingNum}} to be properly nested.","1_3_1_H42.2":"Heading tag found with no content. Text that is not intended as a heading should not be marked up with heading tags.","1_3_1_H48":"If this element contains a navigation section, it is recommended that it be marked up as a list.","1_3_1_LayoutTable":"This table appears to be a layout table. If it is meant to instead be a data table, ensure header cells are identified using th elements.","1_3_1_DataTable":"This table appears to be a data table. If it is meant to instead be a layout table, ensure there are no th elements, and no summary or caption.","1_3_2_G57":"Check that the content is ordered in a meaningful sequence when linearised, such as when style sheets are disabled.","1_3_3_G96":"Where instructions are provided for understanding the content, do not rely on sensory characteristics alone (such as shape, size or location) to describe objects.","1_4_1_G14,G18":"Check that any information conveyed using colour alone is also available in text, or through other visual cues.","1_4_2_F23":"If this element contains audio that plays automatically for longer than 3 seconds, check that there is the ability to pause, stop or mute the audio.","1_4_3_F24.BGColour":"Check that this element has an inherited foreground colour to complement the corresponding inline background colour or image.","1_4_3_F24.FGColour":"Check that this element has an inherited background colour or image to complement the corresponding inline foreground colour.","1_4_3_G18_or_G145.Abs":"This element is absolutely positioned and the background color can not be determined. Ensure the contrast ratio between the text and all covered parts of the background are at least {{required}}:1.","1_4_3_G18_or_G145.BgImage":"This element's text is placed on a background image. Ensure the contrast ratio between the text and all covered parts of the image are at least {{required}}:1.","1_4_3_G18_or_G145.Alpha":"This element's text or background contains transparency. Ensure the contrast ratio between the text and background are at least {{required}}:1.","1_4_3_G18_or_G145.Fail":"This element has insufficient contrast at this conformance level. Expected a contrast ratio of at least {{required}}:1, but text in this element has a contrast ratio of {{value}}:1.","1_4_3_G18_or_G145.Fail.Recomendation":"Recommendation: ","1_4_3_G18_or_G145.Fail.Recomendation.Text":"change text colour to {{value}}","1_4_3_G18_or_G145.Fail.Recomendation.Background":"change background to {{value}}","1_4_4_G142":"Check that text can be resized without assistive technology up to 200 percent without loss of content or functionality.","1_4_5_G140,C22,C30.AALevel":"If the technologies being used can achieve the visual presentation, check that text is used to convey information rather than images of text, except when the image of text is essential to the information being conveyed, or can be visually customised to the user's requirements.","1_4_6_G18_or_G17.Abs":"This element is absolutely positioned and the background color can not be determined. Ensure the contrast ratio between the text and all covered parts of the background are at least {{required}}:1.","1_4_6_G18_or_G17.BgImage":"This element's text is placed on a background image. Ensure the contrast ratio between the text and all covered parts of the image are at least {{required}}:1.","1_4_6_G18_or_G17.Fail":"This element has insufficient contrast at this conformance level. Expected a contrast ratio of at least {{required}}:1, but text in this element has a contrast ratio of {{value}}:1.","1_4_6_G18_or_G17.Fail.Recomendation":"Recommendation: ","1_4_6_G18_or_G17.Fail.Recomendation.Text":"change text colour to {{value}}","1_4_6_G18_or_G17.Fail.Recomendation.Background":"change background to {{value}}","1_4_7_G56":"For pre-recorded audio-only content in this element that is primarily speech (such as narration), any background sounds should be muteable, or be at least 20 dB (or about 4 times) quieter than the speech.","1_4_8_G148,G156,G175":"Check that a mechanism is available for the user to select foreground and background colours for blocks of text, either through the Web page or the browser.","1_4_8_H87,C20":"Check that a mechanism exists to reduce the width of a block of text to no more than 80 characters (or 40 in Chinese, Japanese or Korean script).","1_4_8_C19,G172,G169":"Check that blocks of text are not fully justified - that is, to both left and right edges - or a mechanism exists to remove full justification.","1_4_8_G188,C21":"Check that line spacing in blocks of text are at least 150% in paragraphs, and paragraph spacing is at least 1.5 times the line spacing, or that a mechanism is available to achieve this.","1_4_8_H87,G146,C26":"Check that text can be resized without assistive technology up to 200 percent without requiring the user to scroll horizontally on a full-screen window.","1_4_9_G140,C22,C30.NoException":"Check that images of text are only used for pure decoration or where a particular presentation of text is essential to the information being conveyed.","2_1_1_G90":"Ensure the functionality provided by an event handler for this element is available through the keyboard","2_1_1_SCR20.DblClick":"Ensure the functionality provided by double-clicking on this element is available through the keyboard.","2_1_1_SCR20.MouseOver":"Ensure the functionality provided by mousing over this element is available through the keyboard; for instance, using the focus event.","2_1_1_SCR20.MouseOut":"Ensure the functionality provided by mousing out of this element is available through the keyboard; for instance, using the blur event.","2_1_1_SCR20.MouseMove":"Ensure the functionality provided by moving the mouse on this element is available through the keyboard.","2_1_1_SCR20.MouseDown":"Ensure the functionality provided by mousing down on this element is available through the keyboard; for instance, using the keydown event.","2_1_1_SCR20.MouseUp":"Ensure the functionality provided by mousing up on this element is available through the keyboard; for instance, using the keyup event.","2_1_2_F10":"Check that this applet or plugin provides the ability to move the focus away from itself when using the keyboard.","2_2_1_F40.2":"Meta refresh tag used to redirect to another page, with a time limit that is not zero. Users cannot control this time limit.","2_2_1_F41.2":"Meta refresh tag used to refresh the current page. Users cannot control the time limit for this refresh.","2_2_2_SCR33,SCR22,G187,G152,G186,G191":"If any part of the content moves, scrolls or blinks for more than 5 seconds, or auto-updates, check that there is a mechanism available to pause, stop, or hide the content.","2_2_2_F4":"Ensure there is a mechanism available to stop this blinking element in less than five seconds.","2_2_2_F47":"Blink elements cannot satisfy the requirement that blinking information can be stopped within five seconds.","2_2_3_G5":"Check that timing is not an essential part of the event or activity presented by the content, except for non-interactive synchronized media and real-time events.","2_2_4_SCR14":"Check that all interruptions (including updates to content) can be postponed or suppressed by the user, except interruptions involving an emergency.","2_2_5_G105,G181":"If this Web page is part of a set of Web pages with an inactivity time limit, check that an authenticated user can continue the activity without loss of data after re-authenticating.","2_3_1_G19,G176":"Check that no component of the content flashes more than three times in any 1-second period, or that the size of any flashing area is sufficiently small.","2_3_2_G19":"Check that no component of the content flashes more than three times in any 1-second period.","2_4_1_H64.1":"Iframe element requires a non-empty title attribute that identifies the frame.","2_4_1_H64.2":"Check that the title attribute of this element contains text that identifies the frame.","2_4_1_G1,G123,G124,H69":"Ensure that any common navigation elements can be bypassed; for instance, by use of skip links, header elements, or ARIA landmark roles.","2_4_1_G1,G123,G124.NoSuchID":'This link points to a named anchor "{{id}}" within the document, but no anchor exists with that name.',"2_4_1_G1,G123,G124.NoSuchIDFragment":'This link points to a named anchor "{{id}}" within the document, but no anchor exists with that name in the fragment tested.',"2_4_2_H25.1.NoHeadEl":"There is no head section in which to place a descriptive title element.","2_4_2_H25.1.NoTitleEl":"A title should be provided for the document, using a non-empty title element in the head section.","2_4_2_H25.1.EmptyTitle":"The title element in the head section should be non-empty.","2_4_2_H25.2":"Check that the title element describes the document.","2_4_3_H4.2":"If tabindex is used, check that the tab order specified by the tabindex attributes follows relationships in the content.","2_4_4_H77,H78,H79,H80,H81,H33":"Check that the link text combined with programmatically determined link context, or its title attribute, identifies the purpose of the link.","2_4_4_H77,H78,H79,H80,H81":"Check that the link text combined with programmatically determined link context identifies the purpose of the link.","2_4_5_G125,G64,G63,G161,G126,G185":"If this Web page is not part of a linear process, check that there is more than one way of locating this Web page within a set of Web pages.","2_4_6_G130,G131":"Check that headings and labels describe topic or purpose.","2_4_7_G149,G165,G195,C15,SCR31":"Check that there is at least one mode of operation where the keyboard focus indicator can be visually located on user interface controls.","2_4_8_H59.1":"Link elements can only be located in the head section of the document.","2_4_8_H59.2a":"Link element is missing a non-empty rel attribute identifying the link type.","2_4_8_H59.2b":"Link element is missing a non-empty href attribute pointing to the resource being linked.","2_4_9_H30":"Check that text of the link describes the purpose of the link.","3_1_1_H57.2":"The html element should have a lang or xml:lang attribute which describes the language of the document.","3_1_1_H57.3.Lang":"The language specified in the lang attribute of the document element does not appear to be well-formed.","3_1_1_H57.3.XmlLang":"The language specified in the xml:lang attribute of the document element does not appear to be well-formed.","3_1_2_H58":"Ensure that any change in language is marked using the lang and/or xml:lang attribute on an element, as appropriate.","3_1_2_H58.1.Lang":"The language specified in the lang attribute of this element does not appear to be well-formed.","3_1_2_H58.1.XmlLang":"The language specified in the xml:lang attribute of this element does not appear to be well-formed.","3_1_3_H40,H54,H60,G62,G70":"Check that there is a mechanism available for identifying specific definitions of words or phrases used in an unusual or restricted way, including idioms and jargon.","3_1_4_G102,G55,G62,H28,G97":"Check that a mechanism for identifying the expanded form or meaning of abbreviations is available.","3_1_5_G86,G103,G79,G153,G160":"Where the content requires reading ability more advanced than the lower secondary education level, supplemental content or an alternative version should be provided.","3_1_6_H62.1.HTML5":"Ruby element does not contain an rt element containing pronunciation information for its body text.","3_1_6_H62.1.XHTML11":"Ruby element does not contain an rt element containing pronunciation information for the text inside the rb element.","3_1_6_H62.2":"Ruby element does not contain rp elements, which provide extra punctuation to browsers not supporting ruby text.","3_2_1_G107":"Check that a change of context does not occur when this input field receives focus.","3_2_2_H32.2":'This form does not contain a submit button, which creates issues for those who cannot submit the form using the keyboard. Submit buttons are INPUT elements with type attribute "submit" or "image", or BUTTON elements with type "submit" or omitted/invalid.',"3_2_3_G61":"Check that navigational mechanisms that are repeated on multiple Web pages occur in the same relative order each time they are repeated, unless a change is initiated by the user.","3_2_4_G197":"Check that components that have the same functionality within this Web page are identified consistently in the set of Web pages to which it belongs.","3_2_5_H83.3":"Check that this link's link text contains information indicating that the link will open in a new window.","3_3_1_G83,G84,G85":"If an input error is automatically detected in this form, check that the item(s) in error are identified and the error(s) are described to the user in text.","3_3_2_G131,G89,G184,H90":"Check that descriptive labels or instructions (including for required fields) are provided for user input in this form.","3_3_3_G177":"Check that this form provides suggested corrections to errors in user input, unless it would jeopardize the security or purpose of the content.","3_3_4_G98,G99,G155,G164,G168.LegalForms":"If this form would bind a user to a financial or legal commitment, modify/delete user-controllable data, or submit test responses, ensure that submissions are either reversible, checked for input errors, and/or confirmed by the user.","3_3_5_G71,G184,G193":"Check that context-sensitive help is available for this form, at a Web-page and/or control level.","3_3_6_G98,G99,G155,G164,G168.AllForms":"Check that submissions to this form are either reversible, checked for input errors, and/or confirmed by the user.","4_1_1_F77":'Duplicate id attribute value "{{id}}" found on the web page.',"4_1_2_H91.A.Empty":"Anchor element found with an ID but without a href or link text. Consider moving its ID to a parent or nearby element.","4_1_2_H91.A.EmptyWithName":"Anchor element found with a name attribute but without a href or link text. Consider moving the name attribute to become an ID of a parent or nearby element.","4_1_2_H91.A.EmptyNoId":"Anchor element found with no link content and no name and/or ID attribute.","4_1_2_H91.A.NoHref":"Anchor elements should not be used for defining in-page link targets. If not using the ID for other purposes (such as CSS or scripting), consider moving it to a parent element.","4_1_2_H91.A.Placeholder":"Anchor element found with link content, but no href, ID or name attribute has been supplied.","4_1_2_H91.A.NoContent":"Anchor element found with a valid href attribute, but no link content has been supplied.","4_1_2_input_element":"input element","4_1_2_element_content":"element content","4_1_2_element":"element","4_1_2_msg_pattern":"This {{msgNodeType}} does not have a name available to an accessibility API. Valid names are: {{builtAttrs}}.","4_1_2_msg_pattern_role_of_button":'This element has role of "button" but does not have a name available to an accessibility API. Valid names are: {{builtAttrs}}.',"4_1_2_msg_pattern2":"This {{msgNodeType}} does not have a value available to an accessibility API.","4_1_2_msg_add_one":"Add one by adding content to the element.","4_1_2_msg_pattern3":"This {{msgNodeType}} does not have an initially selected option. Depending on your HTML version, the value exposed to an accessibility API may be undefined.","4_1_2_value_exposed_using_attribute":"A value is exposed using the {{requiredValue}} attribute.","4_1_2_value_exposed_using_element":"A value is exposed using the {{requiredValue}} element."},_global.translation.fr={auditor_name:"HTML_CodeSniffer par Squiz",auditor_using_standard:"Utilisation de la norme",auditor_standards:"Normes",auditor_code_snippet:"Bout de code",auditor_close:"Fermer",auditor_select_types:"Sélectionner les types de questions à inclure dans le rapport",auditor_home:"Accueil",auditor_view_report:"Voir le rapport",auditor_report:"Rapport",auditor_back_to_report:"Retour au rapport",auditor_previous_issue:"Problème précédent",auditor_next_issue:"Prochain problème",auditor_issue:"Problème",auditor_of:"de",auditor_errors:"Erreurs",auditor_error:"Erreur",auditor_warnings:"Attentions",auditor_warning:"Attention",auditor_notices:"Avis",auditor_notice:"Avis",auditor_toggle_display_of:"Basculer l'affichage de",auditor_messages:"messages",auditor_unable_to_point:"Impossible de pointer vers l'élément associé à ce problème.",auditor_unable_to_point_entire:"Impossible d'attirer l'attention sur cette question, car elle concerne l'ensemble du document.",auditor_unable_to_point_removed:"Impossible de pointer vers cet élément car il a été supprimé du document depuis que le rapport a été généré.",auditor_unable_to_point_outside:"Impossible de pointer vers cet élément parce qu'il est situé à l'extérieur de l'élément de corps du document.",auditor_unable_to_point_hidden:"Impossible de pointer vers cet élément parce qu'il est caché de la vue ou n'a pas de représentation visuelle.",auditor_point_to_element:"Pointer vers l'élément",auditor_unsupported_browser:"La fonctionnalité d'extrait de code n'est pas prise en charge dans ce navigateur.",auditor_page:"Page",auditor_updated_to:"HTML_CodeSniffer a été mis à jour en version",auditor_view_the_changelog:"Voir le journal des modifications",auditor_success_criterion:"Critère de réussite",auditor_suggested_techniques:"Techniques suggérées",auditor_applies_entire_document:"Ceci s'applique à l'ensemble du document","1_1_1_H30.2":"L'élément Img est le seul contenu du lien, mais il manque le texte alt. Le texte alternatif devrait décrire le but du lien.","1_1_1_H67.1":"L'élément Img avec du texte alt vide doit avoir un attribut de titre absent ou vide.","1_1_1_H67.2":"L'élément Img est marqué de sorte qu'il est ignoré par la technologie d'assistance.","1_1_1_H37":"Élément Img auquel il manque un attribut alt. Utilisez l'attribut alt pour spécifier une alternative de texte court.","1_1_1_G94.Image":"Assurez-vous que le texte alt de l'élément img sert aux mêmes fins et présente les mêmes informations que l'image.","1_1_1_H36":"Le bouton de soumission d'image n'a pas de texte alternatif. Spécifiez une alternative de texte qui décrit la fonction du bouton, en utilisant l'attribut alt.","1_1_1_G94.Button":"Assurez-vous que le texte alt du bouton de soumission d'image identifie le but du bouton.","1_1_1_H24":"Élément de zone dans une carte-image sans attribut alt. Chaque élément de zone doit avoir une alternative textuelle qui décrit la fonction de la zone de la carte image.","1_1_1_H24.2":"Assurez-vous que l'alternative textuelle de l'élément de zone sert le même but que la partie de l'image de la carte-image à laquelle il fait référence.","1_1_1_G73,G74":"Si cette image ne peut être entièrement décrite dans un texte court, assurez-vous qu'un texte long est également disponible, comme dans le corps du texte ou par le biais d'un lien.","1_1_1_H2.EG5":"L'élément Img à l'intérieur d'un lien ne doit pas utiliser de texte alt qui duplique le contenu textuel du lien.","1_1_1_H2.EG4":"L'élément Img à l'intérieur d'un lien a du texte alt vide ou manquant lorsqu'un lien à côté contient du texte de lien. Pensez à combiner les liens.","1_1_1_H2.EG3":"L'élément Img à l'intérieur d'un lien ne doit pas utiliser de texte alt qui duplique le contenu d'un lien texte à côté.","1_1_1_H53,ARIA6":"Les éléments d'objet doivent contenir une alternative de texte après l'épuisement de toutes les autres alternatives.","1_1_1_G94,G92.Object,ARIA6":"Vérifiez que des textes courts (et, le cas échéant, les longs) sont disponibles pour les contenus non textuels qui servent le même but et présentent la même information.","1_1_1_H35.3":"Les éléments de l'applet doivent contenir une alternative textuelle dans le corps de l'élément, pour les navigateurs qui ne supportent pas l'élément applet.","1_1_1_H35.2":"Les éléments de l'applet doivent contenir un attribut alt, afin de fournir une alternative textuelle aux navigateurs supportant l'élément mais incapables de charger l'applet.","1_1_1_G94,G92.Applet":"Vérifiez que des textes courts (et, le cas échéant, les longs) sont disponibles pour les contenus non textuels qui servent le même but et présentent la même information.","1_2_1_G158":"Si cet objet incorporé ne contient que de l'audio préenregistré et n'est pas fourni comme alternative pour le contenu textuel, vérifiez qu'une version texte alternative est disponible.","1_2_1_G159,G166":"Si cet objet incorporé ne contient que de la vidéo préenregistrée et n'est pas fourni comme alternative au contenu textuel, vérifiez qu'une version texte alternative est disponible, ou qu'une piste audio est fournie qui présente des informations équivalentes.","1_2_2_G87,G93":"Si cet objet incorporé contient un support synchronisé préenregistré et n'est pas fourni comme alternative pour le contenu textuel, vérifiez que les légendes sont fournies pour le contenu audio.","1_2_3_G69,G78,G173,G8":"Si cet objet incorporé contient un support synchronisé préenregistré et n'est pas fourni comme alternative au contenu textuel, vérifiez qu'une description audio de sa vidéo et/ou une version textuelle alternative du contenu est fournie.","1_2_4_G9,G87,G93":"Si cet objet incorporé contient des médias synchronisés, vérifiez que les légendes sont fournies pour le contenu audio en direct.","1_2_5_G78,G173,G8":"Si cet objet incorporé contient un support synchronisé préenregistré, vérifiez qu'une description audio est fournie pour son contenu vidéo.","1_2_6_G54,G81":"Si cet objet incorporé contient un support synchronisé préenregistré, vérifiez qu'une interprétation en langage des signes est fournie pour l'audio.","1_2_7_G8":"Si cet objet incorporé contient des médias synchronisés, et si les pauses dans l'audio de premier plan ne suffisent pas pour permettre aux descriptions audio de transmettre le sens de la vidéo préenregistrée, vérifiez qu'une description audio étendue est fournie, soit par le biais d'un script ou d'une autre version.","1_2_8_G69,G159":"Si cet objet incorporé contient un média synchronisé pré-enregistré ou un contenu vidéo uniquement, vérifiez qu'une version texte alternative du contenu est fournie.","1_2_9_G150,G151,G157":"Si cet objet incorporé contient du contenu audio en direct, vérifiez qu'une version texte alternative du contenu est fournie.","1_3_1_F92,ARIA4":'Le rôle de cet élément est "présentation" mais contient des éléments enfants avec une signification sémantique.',"1_3_1_H44.NonExistent":"L'attribut \"for\" de cette étiquette contient un identifiant qui n'existe pas dans le document.","1_3_1_H44.NonExistentFragment":"L'attribut \"for\" de cette étiquette contient un ID qui n'existe pas dans le fragment de document.","1_3_1_H44.NotFormControl":"L'attribut \"for\" de cette étiquette contient un ID pour un élément qui n'est pas un contrôle de formulaire. Assurez-vous d'avoir saisi l'ID correct pour l'élément prévu.","1_3_1_H65":'Ce contrôle de formulaire a un attribut "title" qui est vide ou ne contient que des espaces. Il sera ignoré à des fins de test d\'étiquetage.',"1_3_1_ARIA6":'Ce contrôle de formulaire possède un attribut "aria-label" qui est vide ou ne contient que des espaces. Il sera ignoré à des fins de test d\'étiquetage.',"1_3_1_ARIA16,ARIA9":"Ce contrôle de formulaire contient un attribut aria-labelledby, mais il inclut un ID \"{{id}}\" qui n'existe pas sur un élément. L'attribut aria-labelledby sera ignoré à des fins de test d'étiquetage.","1_3_1_F68.Hidden":"Ce champ de formulaire caché est étiqueté d'une manière ou d'une autre. Il ne devrait pas être nécessaire d'étiqueter un champ de formulaire caché.","1_3_1_F68.HiddenAttr":"Ce champ de formulaire est destiné à être masqué (à l'aide de l'attribut \"caché\"), mais il est également étiqueté d'une manière ou d'une autre. Il ne devrait pas être nécessaire d'étiqueter un champ de formulaire caché.","1_3_1_F68":'Ce champ du formulaire doit être étiqueté d\'une manière ou d\'une autre. Utilisez l\'élément d\'étiquette (avec un attribut "for" ou enroulé autour du champ du formulaire), ou les attributs "title", "aria-label" ou "aria-labelledby" selon le cas.',"1_3_1_H49.":"Le balisage de présentation utilisé est devenu obsolète dans HTML5.","1_3_1_H49.AlignAttr":"Aligner les attributs.","1_3_1_H49.Semantic":"Le balisage sémantique doit être utilisé pour marquer un texte accentué ou un texte spécial afin qu'il puisse être déterminé par programmation.","1_3_1_H49.AlignAttr.Semantic":"Le balisage sémantique doit être utilisé pour marquer un texte accentué ou un texte spécial afin qu'il puisse être déterminé par programmation.","1_3_1_H42":"Une balise d'en-tête doit être utilisée si ce contenu est destiné à servir d'en-tête.","1_3_1_H63.3":"La cellule de table a un attribut de portée invalide. Les valeurs valides sont ligne, col, groupe de lignes, groupe de lignes ou groupe de colonnes.","1_3_1_H63.2":"Les attributs Scope sur les éléments td qui servent de titres pour d'autres éléments sont obsolètes dans HTML5. Utilisez un th élément à la place.","1_3_1_H43.ScopeAmbiguous":"Les attributs de portée sur ces éléments sont ambigus dans un tableau à niveaux multiples d'en-têtes. Utilisez plutôt l'attribut headers sur les éléments td.","1_3_1_H43.IncorrectAttr":'L\'attribut d\'en-tête incorrect sur cet élément td. Attendue "{{expected}}" mais trouvée "{{actual}}".',"1_3_1_H43.HeadersRequired":"La relation entre les éléments td et leurs éléments associés n'est pas définie. Comme cette table a plusieurs niveaux de ces éléments, vous devez utiliser l'attribut headers sur les éléments td.","1_3_1_H43.MissingHeaderIds":"Tous les éléments de cette table ne contiennent pas un attribut id. Ces cellules devraient contenir des ids de sorte qu'elles puissent être référencées par des éléments td attributs d'en-têtes.","1_3_1_H43.MissingHeadersAttrs":"Tous les éléments td de cette table ne contiennent pas un attribut d'en-tête. Chaque attribut d'en-tête devrait énumérer les ids de tous les éléments associés à cette cellule.","1_3_1_H43,H63":"La relation entre les éléments td et leurs éléments associés n'est pas définie. Utilisez soit l'attribut scope sur ces éléments, soit l'attribut headers sur les éléments td.","1_3_1_H63.1":"Tous les éléments de ce tableau n'ont pas tous un attribut de portée. Ces cellules doivent contenir un attribut scope pour identifier leur association avec les éléments td.","1_3_1_H73.3.LayoutTable":"Ce tableau semble être utilisé pour la mise en page, mais contient un attribut résumé. Les tableaux de présentation ne doivent pas contenir d'attributs sommaires ou, s'ils sont fournis, doivent être vides.","1_3_1_H39,H73.4":"Si ce tableau est un tableau de données et qu'un attribut résumé et un élément de légende sont présents, le résumé ne doit pas dupliquer la légende.","1_3_1_H73.3.Check":"Si ce tableau est un tableau de données, vérifiez que l'attribut summary décrit l'organisation du tableau ou explique comment utiliser le tableau.","1_3_1_H73.3.NoSummary":"Si ce tableau est un tableau de données, envisagez d'utiliser l'attribut résumé de l'élément de tableau pour donner une vue d'ensemble de ce tableau.","1_3_1_H39.3.LayoutTable":"Ce tableau semble être utilisé pour la mise en page, mais contient un élément de légende. Les tables de présentation ne doivent pas contenir de légendes.","1_3_1_H39.3.Check":"Si ce tableau est un tableau de données, vérifiez que l'élément de légende décrit correctement ce tableau.","1_3_1_H39.3.NoCaption":"Si ce tableau est un tableau de données, envisagez d'utiliser un élément de légende de l'élément de tableau pour identifier ce tableau.","1_3_1_H71.NoLegend":"Fieldset ne contient pas d'élément de légende. Tous les champs doivent contenir un élément de légende décrivant la description du groupe de champs.","1_3_1_H85.2":"Si cette liste de sélection contient des groupes d'options connexes, ils doivent être regroupés avec le groupe optgroup.","1_3_1_H71.SameName":"Si ces boutons radio ou cases à cocher nécessitent une description plus détaillée au niveau du groupe, ils doivent être contenus dans un élément de l'ensemble des champs.","1_3_1_H48.1":"Ce contenu semble simuler une liste non ordonnée à l'aide de texte brut. Si c'est le cas, marquer ce contenu avec un élément ul ajouterait une information de structure appropriée au document.","1_3_1_H48.2":"Ce contenu semble simuler une liste ordonnée à l'aide de texte brut. Si c'est le cas, marquer ce contenu avec un élément ol ajouterait des informations de structure appropriées au document.","1_3_1_G141_a":"La structure d'en-tête n'est pas imbriquée logiquement. Cet élément h{{{headingNum}} semble être l'en-tête du document primaire, donc devrait être un élément h1.","1_3_1_G141_b":"La structure d'en-tête n'est pas imbriquée logiquement. Cet élément h{{{headingNum}} devrait être un h{properHeadingNum}} pour être correctement imbriqué.","1_3_1_H42.2":"Étiquette d'en-tête trouvée sans contenu. Le texte qui n'est pas destiné à servir d'en-tête ne doit pas être marqué avec des balises d'en-tête.","1_3_1_H48":"Si cet élément contient une section de navigation, il est recommandé de le marquer comme une liste.","1_3_1_LayoutTable":"Ce tableau semble être un tableau de présentation. S'il s'agit plutôt d'un tableau de données, assurez-vous que les cellules d'en-tête sont identifiées à l'aide de ces éléments.","1_3_1_DataTable":"Ce tableau semble être un tableau de données. S'il s'agit plutôt d'un tableau de présentation, assurez-vous qu'il n'y a pas d'éléments, ni de résumé ou de légende\".","1_3_2_G57":"Vérifiez que le contenu est ordonné dans un ordre significatif lorsqu'il est linéarisé, par exemple lorsque les feuilles de style sont désactivées.","1_3_3_G96":"Lorsque des instructions sont fournies pour comprendre le contenu, ne vous fiez pas uniquement aux caractéristiques sensorielles (telles que la forme, la taille ou l'emplacement) pour décrire les objets.","1_4_1_G14,G18":"Vérifier que toute information véhiculée par la couleur seule est également disponible sous forme de texte ou d'autres repères visuels.","1_4_2_F23":"Si cet élément contient de l'audio qui joue automatiquement pendant plus de 3 secondes, vérifiez qu'il est possible de mettre en pause, d'arrêter ou de couper le son.","1_4_3_F24.BGColour":"Vérifiez que cet élément a une couleur d'avant-plan héritée pour compléter la couleur ou l'image d'arrière-plan en ligne correspondante.","1_4_3_F24.FGColour":"Vérifiez que cet élément a une couleur ou une image d'arrière-plan héritée pour compléter la couleur d'avant-plan correspondante.","1_4_3_G18_or_G145.Abs":"Cet élément est absolument positionné et la couleur de fond ne peut pas être déterminée. Assurez-vous que le rapport de contraste entre le texte et toutes les parties couvertes de l'arrière-plan est d'au moins {{nécessaire}}:1.","1_4_3_G18_or_G145.BgImage":"Le texte de cet élément est placé sur une image de fond. Assurez-vous que le rapport de contraste entre le texte et toutes les parties couvertes de l'image est d'au moins {{nécessaire}}:1.","1_4_3_G18_or_G145.Alpha":"Le texte ou l'arrière-plan de cet élément contient de la transparence. Assurez-vous que le rapport de contraste entre le texte et l'arrière-plan est d'au moins {{nécessaire}}:1.","1_4_3_G18_or_G145.Fail":"Cet élément a un contraste insuffisant à ce niveau de conformité. On s'attendait à un rapport de contraste d'au moins {{required}}:1, mais le texte dans cet élément a un rapport de contraste de {{value}}:1.","1_4_3_G18_or_G145.Fail.Recomendation":"Recommandation : ","1_4_3_G18_or_G145.Fail.Recomendation.Text":"changement Couleur du texte à {{value}}","1_4_3_G18_or_G145.Fail.Recomendation.Background":"changement Fond à {{value}}","1_4_4_G142":"Vérifiez que le texte peut être redimensionné sans technologie d'assistance jusqu'à 200 pour cent sans perte de contenu ou de fonctionnalité.","1_4_5_G140,C22,C30.AALevel":"Si les technologies utilisées permettent d'obtenir une présentation visuelle, vérifiez que le texte est utilisé pour transmettre des informations plutôt que des images de texte, sauf lorsque l'image du texte est essentielle à l'information véhiculée, ou peut être visuellement adaptée aux besoins de l'utilisateur.","1_4_6_G18_or_G17.Abs":"Cet élément est absolument positionné et la couleur de fond ne peut pas être déterminée. Assurez-vous que le rapport de contraste entre le texte et toutes les parties couvertes de l'arrière-plan est d'au moins {{nécessaire}}:1.","1_4_6_G18_or_G17.BgImage":"Le texte de cet élément est placé sur une image de fond. Assurez-vous que le rapport de contraste entre le texte et toutes les parties couvertes de l'image est d'au moins {{nécessaire}}:1.","1_4_6_G18_or_G17.Fail":"Cet élément a un contraste insuffisant à ce niveau de conformité. On s'attendait à un rapport de contraste d'au moins {{required}}:1, mais le texte dans cet élément a un rapport de contraste de {{value}}:1.","1_4_6_G18_or_G17.Fail.Recomendation":"Recommandation : ","1_4_6_G18_or_G17.Fail.Recomendation.Text":"changement Couleur du texte à {{value}}","1_4_6_G18_or_G17.Fail.Recomendation.Background":"changement Fond à {{value}}","1_4_7_G56":"Pour le contenu audio préenregistré de cet élément qui est principalement de la parole (comme la narration), tout bruit de fond devrait être muet, ou être au moins 20 dB (ou environ 4 fois plus silencieux que le discours).","1_4_8_G148,G156,G175":"Vérifiez qu'il existe un mécanisme permettant à l'utilisateur de sélectionner les couleurs d'avant-plan et d'arrière-plan pour les blocs de texte, soit par l'intermédiaire de la page Web ou du navigateur.","1_4_8_H87,C20":"Vérifiez qu'il existe un mécanisme permettant de réduire la largeur d'un bloc de texte à un maximum de 80 caractères (ou 40 en caractères chinois, japonais ou coréen).","1_4_8_C19,G172,G169":"Vérifiez que les blocs de texte ne sont pas entièrement justifiés - c'est-à-dire à gauche et à droite - ou qu'il existe un mécanisme pour supprimer toute justification.","1_4_8_G188,C21":"Vérifiez que l'interligne dans les blocs de texte est d'au moins 150% dans les paragraphes et que l'interligne est d'au moins 1,5 fois l'interligne ou qu'il existe un mécanisme pour y parvenir.","1_4_8_H87,G146,C26":"Vérifiez que le texte peut être redimensionné sans technologie d'assistance jusqu'à 200 pour cent sans que l'utilisateur ait besoin de faire défiler horizontalement sur une fenêtre plein écran.","1_4_9_G140,C22,C30.NoException":"Vérifier que les images de texte ne sont utilisées qu'à des fins de décoration pure ou lorsqu'une présentation particulière du texte est essentielle à l'information véhiculée.","2_1_1_G90":"S'assurer que la fonctionnalité fournie par un gestionnaire d'événements pour cet élément est disponible par l'intermédiaire du clavier.","2_1_1_SCR20.DblClick":"Assurez-vous que la fonctionnalité fournie en double-cliquant sur cet élément est disponible par l'intermédiaire du clavier.","2_1_1_SCR20.MouseOver":"Assurez-vous que la fonctionnalité fournie par la souris sur cet élément est disponible par l'intermédiaire du clavier, par exemple, en utilisant l'événement focus.","2_1_1_SCR20.MouseOut":"Assurez-vous que la fonctionnalité fournie par la souris hors de cet élément est disponible par le clavier ; par exemple, en utilisant l'événement flou.","2_1_1_SCR20.MouseMove":"Assurez-vous que la fonctionnalité fournie en déplaçant la souris sur cet élément est disponible par l'intermédiaire du clavier.","2_1_1_SCR20.MouseDown":"Assurez-vous que la fonctionnalité fournie par la souris sur cet élément est disponible par l'intermédiaire du clavier, par exemple, en utilisant l'événement keydown.","2_1_1_SCR20.MouseUp":"Assurez-vous que la fonctionnalité fournie par la souris sur cet élément est disponible par l'intermédiaire du clavier, par exemple, en utilisant l'événement keyup.","2_1_2_F10":"Vérifiez que cette applet ou plugin permet d'éloigner le focus de lui-même lors de l'utilisation du clavier.","2_2_1_F40.2":"Meta refresh tag utilisé pour rediriger vers une autre page, avec une limite de temps qui n'est pas nulle. Les utilisateurs ne peuvent pas contrôler cette limite de temps.","2_2_1_F41.2":"Meta refresh tag utilisé pour rafraîchir la page courante. Les utilisateurs ne peuvent pas contrôler la limite de temps pour ce rafraîchissement.","2_2_2_SCR33,SCR22,G187,G152,G186,G191":"Si une partie du contenu bouge, défile ou clignote pendant plus de 5 secondes, ou se met à jour automatiquement, vérifiez qu'il existe un mécanisme permettant de mettre en pause, d'arrêter ou de cacher le contenu.","2_2_2_F4":"S'assurer qu'il existe un mécanisme permettant d'arrêter cet élément clignotant en moins de cinq secondes.","2_2_2_F47":"Les éléments clignotants ne peuvent pas satisfaire à l'exigence selon laquelle les informations clignotantes peuvent être arrêtées en moins de cinq secondes.","2_2_3_G5":"Vérifier que le chronométrage n'est pas une partie essentielle de l'événement ou de l'activité présentée par le contenu, à l'exception des médias synchronisés non interactifs et des événements en temps réel.","2_2_4_SCR14":"Vérifier que toutes les interruptions (y compris les mises à jour du contenu) peuvent être reportées ou supprimées par l'utilisateur, à l'exception des interruptions impliquant une situation d'urgence.","2_2_5_G105,G181":"Si cette page Web fait partie d'un ensemble de pages Web avec une limite de temps d'inactivité, vérifiez qu'un utilisateur authentifié peut poursuivre l'activité sans perte de données après la ré-authentification.","2_3_1_G19,G176":"Vérifier qu'aucun composant du contenu ne clignote plus de trois fois au cours d'une période d'une seconde ou que la taille de la zone de clignotement est suffisamment petite.","2_3_2_G19":"Vérifiez qu'aucun composant du contenu ne clignote plus de trois fois au cours d'une période d'une seconde.","2_4_1_H64.1":"L'élément Iframe nécessite un attribut de titre non vide qui identifie la trame.","2_4_1_H64.2":"Vérifiez que l'attribut title de cet élément contient du texte qui identifie le cadre.","2_4_1_G1,G123,G124,H69":"Veiller à ce que tous les éléments de navigation communs puissent être contournés ; par exemple, en utilisant des liens de saut, des éléments d'en-tête ou des rôles de repère ARIA.","2_4_1_G1,G123,G124.NoSuchID":'Ce lien pointe vers une ancre nommée "{{id}}" dans le document, mais aucune ancre n\'existe avec ce nom.',"2_4_1_G1,G123,G124.NoSuchIDFragment":'Ce lien pointe vers une ancre nommée "{{id}}" dans le document, mais aucune ancre n\'existe avec ce nom dans le fragment testé.',"2_4_2_H25.1.NoHeadEl":"Il n'y a pas de section d'en-tête dans laquelle placer un élément de titre descriptif.","2_4_2_H25.1.NoTitleEl":"Un titre devrait être fourni pour le document, en utilisant un élément de titre non vide dans la section d'en-tête.","2_4_2_H25.1.EmptyTitle":"L'élément de titre de la section d'en-tête ne doit pas être vide.","2_4_2_H25.2":"Vérifier que l'élément de titre décrit le document.","2_4_3_H4.2":"Si tabindex est utilisé, vérifiez que l'ordre des onglets spécifié par les attributs de tabindex suit les relations dans le contenu.","2_4_4_H77,H78,H79,H80,H81,H33":"Vérifiez que le texte du lien combiné avec le contexte du lien déterminé par le programme, ou son attribut de titre, identifie le but du lien.","2_4_4_H77,H78,H79,H80,H81":"Vérifiez que le texte du lien combiné avec le contexte du lien déterminé par le programme identifie le but du lien.","2_4_5_G125,G64,G63,G161,G126,G185":"Si cette page Web ne fait pas partie d'un processus linéaire, vérifiez qu'il existe plus d'une façon de localiser cette page Web dans un ensemble de pages Web.","2_4_6_G130,G131":"Vérifiez que les en-têtes et les étiquettes décrivent le sujet ou le but.","2_4_7_G149,G165,G195,C15,SCR31":"Vérifiez qu'il existe au moins un mode de fonctionnement dans lequel l'indicateur de mise au point du clavier peut être placé visuellement sur les commandes de l'interface utilisateur.","2_4_8_H59.1":"Les éléments de lien ne peuvent être situés que dans la section d'en-tête du document.","2_4_8_H59.2a":"Il manque à l'élément Link un attribut rel non vide identifiant le type de lien.","2_4_8_H59.2b":"L'élément Link manque un attribut href non vide pointant vers la ressource liée.","2_4_9_H30":"Vérifiez que le texte du lien décrit l'objet du lien.","3_1_1_H57.2":"L'élément html doit avoir un attribut lang ou xml:lang qui décrit la langue du document.","3_1_1_H57.3.Lang":"La langue spécifiée dans l'attribut lang de l'élément de document ne semble pas être bien formée.","3_1_1_H57.3.XmlLang":"La langue spécifiée dans l'attribut xml:lang de l'élément document ne semble pas être bien formée.","3_1_2_H58":"Assurez-vous que tout changement de langue est marqué à l'aide de l'attribut lang et/ou xml:lang sur un élément, selon le cas.","3_1_2_H58.1.Lang":"La langue spécifiée dans l'attribut lang de cet élément ne semble pas être bien formée.","3_1_2_H58.1.XmlLang":"Le langage spécifié dans l'attribut xml:lang de cet élément ne semble pas être bien formé.","3_1_3_H40,H54,H60,G62,G70":"Vérifier qu'il existe un mécanisme permettant d'identifier des définitions spécifiques de mots ou de phrases utilisés d'une manière inhabituelle ou restreinte, y compris les expressions idiomatiques et le jargon.","3_1_4_G102,G55,G62,H28,G97":"Vérifier qu'il existe un mécanisme permettant d'identifier la forme élargie ou la signification des abréviations.","3_1_5_G86,G103,G79,G153,G160":"Lorsque le contenu exige une capacité de lecture plus avancée que le niveau de l'enseignement secondaire inférieur, un contenu supplémentaire ou une version alternative devrait être fourni.","3_1_6_H62.1.HTML5":"Ruby element does not contain an rt element containing prononciation information for its body text.","3_1_6_H62.1.XHTML11":"Ruby element does not contain an rt element containing prononciation information for the text inside the rb element.","3_1_6_H62.2":"Ruby element does not contain rp elements, which provide extra punctuation to browsers not supporting ruby text.","3_2_1_G107":"Vérifier qu'il n'y a pas de changement de contexte lorsque ce champ de saisie reçoit le focus.","3_2_2_H32.2":'Ce formulaire ne contient pas de bouton de soumission, ce qui crée des problèmes pour ceux qui ne peuvent pas soumettre le formulaire à l\'aide du clavier. Les boutons Submit sont des éléments INPUT avec l\'attribut de type "submit" ou "image", ou des éléments BUTTON avec le type "submit" ou omis/invalid.',"3_2_3_G61":"Vérifiez que les mécanismes de navigation qui sont répétés sur plusieurs pages Web se produisent dans le même ordre relatif chaque fois qu'ils sont répétés, à moins qu'un changement ne soit initié par l'utilisateur.","3_2_4_G197":"Vérifier que les composants qui ont la même fonctionnalité dans cette page Web sont identifiés de manière cohérente dans l'ensemble des pages Web auxquelles ils appartiennent.","3_2_5_H83.3":"Vérifiez que le texte du lien de ce lien contient des informations indiquant que le lien s'ouvrira dans une nouvelle fenêtre.","3_3_1_G83,G84,G85":"Si une erreur de saisie est automatiquement détectée dans ce formulaire, vérifiez que le ou les éléments erronés sont identifiés et que l'erreur ou les erreurs sont décrites à l'utilisateur sous forme de texte.","3_3_2_G131,G89,G184,H90":"Vérifier que les étiquettes descriptives ou les instructions (y compris pour les champs obligatoires) sont fournies pour l'entrée de l'utilisateur dans ce formulaire.","3_3_3_G177":"Vérifier que ce formulaire fournit les corrections suggérées en cas d'erreurs dans les entrées des utilisateurs, à moins que cela ne compromette la sécurité ou l'objectif du contenu.","3_3_4_G98,G99,G155,G164,G168.LegalForms":"Si ce formulaire lie un utilisateur à un engagement financier ou juridique, modifie/supprime des données contrôlables par l'utilisateur, ou soumet des réponses de test, assurez-vous que les soumissions sont réversibles, vérifiées pour les erreurs de saisie et/ou confirmées par l'utilisateur.","3_3_5_G71,G184,G193":"Vérifiez que l'aide contextuelle est disponible pour ce formulaire, au niveau de la page Web et/ou du contrôle.","3_3_6_G98,G99,G155,G164,G168.AllForms":"Vérifier que les soumissions à ce formulaire sont soit réversibles, soit vérifiées pour les erreurs de saisie, et/ou confirmées par l'utilisateur.","4_1_1_F77":'Dupliquer la valeur de l\'attribut id "{{id}}" trouvée sur la page web.',"4_1_2_H91.A.Empty":"L'élément d'ancrage trouvé avec un ID mais sans href ou texte de lien. Envisager de déplacer son ID vers un élément parent ou un élément voisin.","4_1_2_H91.A.EmptyWithName":"L'élément d'ancrage trouvé avec un attribut de nom mais sans href ou texte de lien. Envisagez de déplacer l'attribut de nom pour qu'il devienne l'ID d'un parent ou d'un élément voisin.","4_1_2_H91.A.EmptyNoId":"Élément d'ancrage trouvé sans contenu de lien et sans nom et/ou attribut ID.","4_1_2_H91.A.NoHref":"Les éléments d'ancrage ne doivent pas être utilisés pour définir des cibles de liens en page. Si vous n'utilisez pas l'ID à d'autres fins (comme le CSS ou le script), envisagez de le déplacer vers un élément parent","4_1_2_H91.A.Placeholder":"L'élément d'ancrage trouvé avec le contenu du lien, mais aucun attribut href, ID ou nom n'a été fourni.","4_1_2_H91.A.NoContent":"L'élément d'ancrage trouvé avec un attribut href valide, mais aucun contenu de lien n'a été fourni.","4_1_2_input_element":"élément d'entrée","4_1_2_element_content":"contenu de l'élément","4_1_2_element":"élément","4_1_2_msg_pattern":"Ce {{msgNodeType}} n'a pas de nom disponible pour une API d'accessibilité. Les noms valides le sont : {{builtAttrs}}.","4_1_2_msg_pattern_role_of_button":"Ce l'élément a un rôle de \"bouton\" mais n'a pas de nom disponible pour une API d'accessibilité. Les noms valides le sont : {{builtAttrs}}.","4_1_2_msg_pattern2":"Cette {{{msgNodeType}} n'a pas de valeur disponible pour une API d'accessibilité.","4_1_2_msg_add_one":"Ajouter un en ajoutant du contenu à l'élément.","4_1_2_msg_pattern3":"Cette {{msgNodeType}} n'a pas d'option initialement sélectionnée. Selon votre version HTML, la valeur exposée à une API d'accessibilité peut être indéfinie.","4_1_2_value_exposed_using_attribute":"Une valeur est exposée à l'aide de l'attribut {{requiredValue}}.","4_1_2_value_exposed_using_element":"Une valeur est exposée à l'aide de l'élément {{requiredValue}}."},_global.translation.it={auditor_name:"HTML_CodeSniffer di Squiz",auditor_using_standard:"Standard in uso: ",auditor_standards:"Standard",auditor_code_snippet:"Codice coinvolto",auditor_close:"Chiudi",auditor_select_types:"Seleziona il tipo di verifiche da includere nel report",auditor_home:"Inizio",auditor_view_report:"Risultati del report",auditor_report:"Report",auditor_back_to_report:"Torna al report",auditor_previous_issue:"Problema Precedente",auditor_next_issue:"Problema Successivo",auditor_issue:"Problema",auditor_of:"di",auditor_errors:"Errori",auditor_error:"Errore",auditor_warnings:"Avvisi",auditor_warning:"Avviso",auditor_notices:"Note",auditor_notice:"Nota",auditor_toggle_display_of:"Visibilità di",auditor_messages:"messaggi",auditor_unable_to_point:"Unable to point to the element associated with this issue.",auditor_unable_to_point_entire:"Unable to point to this issue, as it relates to the entire document.",auditor_unable_to_point_removed:"Unable to point to this element as it has been removed from the document since the report was generated.",auditor_unable_to_point_outside:"Unable to point to this element because it is located outside the document's body element.",auditor_unable_to_point_hidden:"Unable to point to this element because it is hidden from view, or does not have a visual representation.",auditor_point_to_element:"Point to Element",auditor_unsupported_browser:"La funzionalità «parte di codice» non funziona su questo browser.",auditor_page:"Pagina",auditor_updated_to:"Abbiamo aggiornato HTML_CodeSniffer alla versione",auditor_view_the_changelog:"Elenco delle modifiche",auditor_success_criterion:"Requisito di successo",auditor_suggested_techniques:"Tecniche suggerite",auditor_applies_entire_document:"Si applica a tutto il documento","1_1_1_H30.2":"Img element is the only content of the link, but is missing alt text. The alt text should describe the purpose of the link.","1_1_1_H67.1":"Img element with empty alt text must have absent or empty title attribute.","1_1_1_H67.2":"Img element is marked so that it is ignored by Assistive Technology.","1_1_1_H37":"Img element missing an alt attribute. Use the alt attribute to specify a short text alternative.","1_1_1_G94.Image":"Ensure that the img element's alt text serves the same purpose and presents the same information as the image.","1_1_1_H36":"Image submit button missing an alt attribute. Specify a text alternative that describes the button's function, using the alt attribute.","1_1_1_G94.Button":"Ensure that the image submit button's alt text identifies the purpose of the button.","1_1_1_H24":"Area element in an image map missing an alt attribute. Each area element must have a text alternative that describes the function of the image map area.","1_1_1_H24.2":"Ensure that the area element's text alternative serves the same purpose as the part of image map image it references.","1_1_1_G73,G74":"If this image cannot be fully described in a short text alternative, ensure a long text alternative is also available, such as in the body text or through a link.","1_1_1_H2.EG5":"Img element inside a link must not use alt text that duplicates the text content of the link.","1_1_1_H2.EG4":"Img element inside a link has empty or missing alt text when a link beside it contains link text. Consider combining the links.","1_1_1_H2.EG3":"Img element inside a link must not use alt text that duplicates the content of a text link beside it.","1_1_1_H53,ARIA6":"Object elements must contain a text alternative after all other alternatives are exhausted.","1_1_1_G94,G92.Object,ARIA6":"Check that short (and if appropriate, long) text alternatives are available for non-text content that serve the same purpose and present the same information.","1_1_1_H35.3":"Applet elements must contain a text alternative in the element's body, for browsers without support for the applet element.","1_1_1_H35.2":"Applet elements must contain an alt attribute, to provide a text alternative to browsers supporting the element but are unable to load the applet.","1_1_1_G94,G92.Applet":"Check that short (and if appropriate, long) text alternatives are available for non-text content that serve the same purpose and present the same information.","1_2_1_G158":"If this embedded object contains pre-recorded audio only, and is not provided as an alternative for text content, check that an alternative text version is available.","1_2_1_G159,G166":"If this embedded object contains pre-recorded video only, and is not provided as an alternative for text content, check that an alternative text version is available, or an audio track is provided that presents equivalent information.","1_2_2_G87,G93":"If this embedded object contains pre-recorded synchronised media and is not provided as an alternative for text content, check that captions are provided for audio content.","1_2_3_G69,G78,G173,G8":"If this embedded object contains pre-recorded synchronised media and is not provided as an alternative for text content, check that an audio description of its video, and/or an alternative text version of the content is provided.","1_2_4_G9,G87,G93":"If this embedded object contains synchronised media, check that captions are provided for live audio content.","1_2_5_G78,G173,G8":"If this embedded object contains pre-recorded synchronised media, check that an audio description is provided for its video content.","1_2_6_G54,G81":"If this embedded object contains pre-recorded synchronised media, check that a sign language interpretation is provided for its audio.","1_2_7_G8":"If this embedded object contains synchronised media, and where pauses in foreground audio is not sufficient to allow audio descriptions to convey the sense of pre-recorded video, check that an extended audio description is provided, either through scripting or an alternate version.","1_2_8_G69,G159":"If this embedded object contains pre-recorded synchronised media or video-only content, check that an alternative text version of the content is provided.","1_2_9_G150,G151,G157":"If this embedded object contains live audio-only content, check that an alternative text version of the content is provided.","1_3_1_F92,ARIA4":'This element\'s role is "presentation" but contains child elements with semantic meaning.',"1_3_1_H44.NonExistent":'This label\'s "for" attribute contains an ID that does not exist in the document.',"1_3_1_H44.NonExistentFragment":'This label\'s "for" attribute contains an ID that does not exist in the document fragment.',"1_3_1_H44.NotFormControl":'This label\'s "for" attribute contains an ID for an element that is not a form control. Ensure that you have entered the correct ID for the intended element.',"1_3_1_H65":'This form control has a "title" attribute that is empty or contains only spaces. It will be ignored for labelling test purposes.',"1_3_1_ARIA6":'This form control has an "aria-label" attribute that is empty or contains only spaces. It will be ignored for labelling test purposes.',"1_3_1_ARIA16,ARIA9":'This form control contains an aria-labelledby attribute, however it includes an ID "{{id}}" that does not exist on an element. The aria-labelledby attribute will be ignored for labelling test purposes.',"1_3_1_F68.Hidden":"This hidden form field is labelled in some way. There should be no need to label a hidden form field.","1_3_1_F68.HiddenAttr":'This form field is intended to be hidden (using the "hidden" attribute), but is also labelled in some way. There should be no need to label a hidden form field.',"1_3_1_F68":'This form field should be labelled in some way. Use the label element (either with a "for" attribute or wrapped around the form field), or "title", "aria-label" or "aria-labelledby" attributes as appropriate.',"1_3_1_H49.":"Presentational markup used that has become obsolete in HTML5.","1_3_1_H49.AlignAttr":"Align attributes.","1_3_1_H49.Semantic":"Semantic markup should be used to mark emphasised or special text so that it can be programmatically determined.","1_3_1_H49.AlignAttr.Semantic":"Semantic markup should be used to mark emphasised or special text so that it can be programmatically determined.","1_3_1_H42":"Heading markup should be used if this content is intended as a heading.","1_3_1_H63.3":"Table cell has an invalid scope attribute. Valid values are row, col, rowgroup, or colgroup.","1_3_1_H63.2":"Scope attributes on td elements that act as headings for other elements are obsolete in HTML5. Use a th element instead.","1_3_1_H43.ScopeAmbiguous":"Scope attributes on th elements are ambiguous in a table with multiple levels of headings. Use the headers attribute on td elements instead.","1_3_1_H43.IncorrectAttr":'Incorrect headers attribute on this td element. Expected "{{expected}}" but found "{{actual}}"',"1_3_1_H43.HeadersRequired":"The relationship between td elements and their associated th elements is not defined. As this table has multiple levels of th elements, you must use the headers attribute on td elements.","1_3_1_H43.MissingHeaderIds":"Not all th elements in this table contain an id attribute. These cells should contain ids so that they may be referenced by td elements' headers attributes.","1_3_1_H43.MissingHeadersAttrs":"Not all td elements in this table contain a headers attribute. Each headers attribute should list the ids of all th elements associated with that cell.","1_3_1_H43,H63":"The relationship between td elements and their associated th elements is not defined. Use either the scope attribute on th elements, or the headers attribute on td elements.","1_3_1_H63.1":"Not all th elements in this table have a scope attribute. These cells should contain a scope attribute to identify their association with td elements.","1_3_1_H73.3.LayoutTable":"This table appears to be used for layout, but contains a summary attribute. Layout tables must not contain summary attributes, or if supplied, must be empty.","1_3_1_H39,H73.4":"If this table is a data table, and both a summary attribute and a caption element are present, the summary should not duplicate the caption.","1_3_1_H73.3.Check":"If this table is a data table, check that the summary attribute describes the table's organization or explains how to use the table.","1_3_1_H73.3.NoSummary":"If this table is a data table, consider using the summary attribute of the table element to give an overview of this table.","1_3_1_H39.3.LayoutTable":"This table appears to be used for layout, but contains a caption element. Layout tables must not contain captions.","1_3_1_H39.3.Check":"If this table is a data table, check that the caption element accurately describes this table.","1_3_1_H39.3.NoCaption":"If this table is a data table, consider using a caption element to the table element to identify this table.","1_3_1_H71.NoLegend":"Fieldset does not contain a legend element. All fieldsets should contain a legend element that describes a description of the field group.","1_3_1_H85.2":"If this selection list contains groups of related options, they should be grouped with optgroup.","1_3_1_H71.SameName":"If these radio buttons or check boxes require a further group-level description, they should be contained within a fieldset element.","1_3_1_H48.1":"This content looks like it is simulating an unordered list using plain text. If so, marking up this content with a ul element would add proper structure information to the document.","1_3_1_H48.2":"This content looks like it is simulating an ordered list using plain text. If so, marking up this content with an ol element would add proper structure information to the document.","1_3_1_G141_a":"The heading structure is not logically nested. This h{{headingNum}} element appears to be the primary document heading, so should be an h1 element.","1_3_1_G141_b":"The heading structure is not logically nested. This h{{headingNum}} element should be an h{{properHeadingNum}} to be properly nested.","1_3_1_H42.2":"Heading tag found with no content. Text that is not intended as a heading should not be marked up with heading tags.","1_3_1_H48":"If this element contains a navigation section, it is recommended that it be marked up as a list.","1_3_1_LayoutTable":"This table appears to be a layout table. If it is meant to instead be a data table, ensure header cells are identified using th elements.","1_3_1_DataTable":"This table appears to be a data table. If it is meant to instead be a layout table, ensure there are no th elements, and no summary or caption.","1_3_2_G57":"Check that the content is ordered in a meaningful sequence when linearised, such as when style sheets are disabled.","1_3_3_G96":"Where instructions are provided for understanding the content, do not rely on sensory characteristics alone (such as shape, size or location) to describe objects.","1_4_1_G14,G18":"Check that any information conveyed using colour alone is also available in text, or through other visual cues.","1_4_2_F23":"If this element contains audio that plays automatically for longer than 3 seconds, check that there is the ability to pause, stop or mute the audio.","1_4_3_F24.BGColour":"Check that this element has an inherited foreground colour to complement the corresponding inline background colour or image.","1_4_3_F24.FGColour":"Check that this element has an inherited background colour or image to complement the corresponding inline foreground colour.","1_4_3_G18_or_G145.Abs":"This element is absolutely positioned and the background color can not be determined. Ensure the contrast ratio between the text and all covered parts of the background are at least {{required}}:1.","1_4_3_G18_or_G145.BgImage":"This element's text is placed on a background image. Ensure the contrast ratio between the text and all covered parts of the image are at least {{required}}:1.","1_4_3_G18_or_G145.Alpha":"This element's text or background contains transparency. Ensure the contrast ratio between the text and background are at least {{required}}:1.","1_4_3_G18_or_G145.Fail":"This element has insufficient contrast at this conformance level. Expected a contrast ratio of at least {{required}}:1, but text in this element has a contrast ratio of {{value}}:1.","1_4_3_G18_or_G145.Fail.Recomendation":"Recommendation: change","1_4_3_G18_or_G145.Fail.Recomendation.Text":"text colour to","1_4_3_G18_or_G145.Fail.Recomendation.Background":"background to","1_4_4_G142":"Check that text can be resized without assistive technology up to 200 percent without loss of content or functionality.","1_4_5_G140,C22,C30.AALevel":"If the technologies being used can achieve the visual presentation, check that text is used to convey information rather than images of text, except when the image of text is essential to the information being conveyed, or can be visually customised to the user's requirements.","1_4_6_G18_or_G17.Abs":"This element is absolutely positioned and the background color can not be determined. Ensure the contrast ratio between the text and all covered parts of the background are at least {{required}}:1.","1_4_6_G18_or_G17.BgImage":"This element's text is placed on a background image. Ensure the contrast ratio between the text and all covered parts of the image are at least {{required}}:1.","1_4_6_G18_or_G17.Fail":"This element has insufficient contrast at this conformance level. Expected a contrast ratio of at least {{required}}:1, but text in this element has a contrast ratio of {{value}}:1.","1_4_6_G18_or_G17.Fail.Recomendation":"Recommendation: change","1_4_6_G18_or_G17.Fail.Recomendation.Text":"text colour to","1_4_6_G18_or_G17.Fail.Recomendation.Background":"background to","1_4_7_G56":"For pre-recorded audio-only content in this element that is primarily speech (such as narration), any background sounds should be muteable, or be at least 20 dB (or about 4 times) quieter than the speech.","1_4_8_G148,G156,G175":"Check that a mechanism is available for the user to select foreground and background colours for blocks of text, either through the Web page or the browser.","1_4_8_H87,C20":"Check that a mechanism exists to reduce the width of a block of text to no more than 80 characters (or 40 in Chinese, Japanese or Korean script).","1_4_8_C19,G172,G169":"Check that blocks of text are not fully justified - that is, to both left and right edges - or a mechanism exists to remove full justification.","1_4_8_G188,C21":"Check that line spacing in blocks of text are at least 150% in paragraphs, and paragraph spacing is at least 1.5 times the line spacing, or that a mechanism is available to achieve this.","1_4_8_H87,G146,C26":"Check that text can be resized without assistive technology up to 200 percent without requiring the user to scroll horizontally on a full-screen window.","1_4_9_G140,C22,C30.NoException":"Check that images of text are only used for pure decoration or where a particular presentation of text is essential to the information being conveyed.","2_1_1_G90":"Ensure the functionality provided by an event handler for this element is available through the keyboard","2_1_1_SCR20.DblClick":"Ensure the functionality provided by double-clicking on this element is available through the keyboard.","2_1_1_SCR20.MouseOver":"Ensure the functionality provided by mousing over this element is available through the keyboard; for instance, using the focus event.","2_1_1_SCR20.MouseOut":"Ensure the functionality provided by mousing out of this element is available through the keyboard; for instance, using the blur event.","2_1_1_SCR20.MouseMove":"Ensure the functionality provided by moving the mouse on this element is available through the keyboard.","2_1_1_SCR20.MouseDown":"Ensure the functionality provided by mousing down on this element is available through the keyboard; for instance, using the keydown event.","2_1_1_SCR20.MouseUp":"Ensure the functionality provided by mousing up on this element is available through the keyboard; for instance, using the keyup event.","2_1_2_F10":"Check that this applet or plugin provides the ability to move the focus away from itself when using the keyboard.","2_2_1_F40.2":"Meta refresh tag used to redirect to another page, with a time limit that is not zero. Users cannot control this time limit.","2_2_1_F41.2":"Meta refresh tag used to refresh the current page. Users cannot control the time limit for this refresh.","2_2_2_SCR33,SCR22,G187,G152,G186,G191":"If any part of the content moves, scrolls or blinks for more than 5 seconds, or auto-updates, check that there is a mechanism available to pause, stop, or hide the content.","2_2_2_F4":"Ensure there is a mechanism available to stop this blinking element in less than five seconds.","2_2_2_F47":"Blink elements cannot satisfy the requirement that blinking information can be stopped within five seconds.","2_2_3_G5":"Check that timing is not an essential part of the event or activity presented by the content, except for non-interactive synchronized media and real-time events.","2_2_4_SCR14":"Check that all interruptions (including updates to content) can be postponed or suppressed by the user, except interruptions involving an emergency.","2_2_5_G105,G181":"If this Web page is part of a set of Web pages with an inactivity time limit, check that an authenticated user can continue the activity without loss of data after re-authenticating.","2_3_1_G19,G176":"Check that no component of the content flashes more than three times in any 1-second period, or that the size of any flashing area is sufficiently small.","2_3_2_G19":"Check that no component of the content flashes more than three times in any 1-second period.","2_4_1_H64.1":"Iframe element requires a non-empty title attribute that identifies the frame.","2_4_1_H64.2":"Check that the title attribute of this element contains text that identifies the frame.","2_4_1_G1,G123,G124,H69":"Ensure that any common navigation elements can be bypassed; for instance, by use of skip links, header elements, or ARIA landmark roles.","2_4_1_G1,G123,G124.NoSuchID":'This link points to a named anchor "{{id}}" within the document, but no anchor exists with that name.',"2_4_1_G1,G123,G124.NoSuchIDFragment":'This link points to a named anchor "{{id}}" within the document, but no anchor exists with that name in the fragment tested.',"2_4_2_H25.1.NoHeadEl":"There is no head section in which to place a descriptive title element.","2_4_2_H25.1.NoTitleEl":"A title should be provided for the document, using a non-empty title element in the head section.","2_4_2_H25.1.EmptyTitle":"The title element in the head section should be non-empty.","2_4_2_H25.2":"Check that the title element describes the document.","2_4_3_H4.2":"If tabindex is used, check that the tab order specified by the tabindex attributes follows relationships in the content.","2_4_4_H77,H78,H79,H80,H81,H33":"Check that the link text combined with programmatically determined link context, or its title attribute, identifies the purpose of the link.","2_4_4_H77,H78,H79,H80,H81":"Check that the link text combined with programmatically determined link context identifies the purpose of the link.","2_4_5_G125,G64,G63,G161,G126,G185":"If this Web page is not part of a linear process, check that there is more than one way of locating this Web page within a set of Web pages.","2_4_6_G130,G131":"Check that headings and labels describe topic or purpose.","2_4_7_G149,G165,G195,C15,SCR31":"Check that there is at least one mode of operation where the keyboard focus indicator can be visually located on user interface controls.","2_4_8_H59.1":"Link elements can only be located in the head section of the document.","2_4_8_H59.2a":"Link element is missing a non-empty rel attribute identifying the link type.","2_4_8_H59.2b":"Link element is missing a non-empty href attribute pointing to the resource being linked.","2_4_9_H30":"Check that text of the link describes the purpose of the link.","3_1_1_H57.2":"The html element should have a lang or xml:lang attribute which describes the language of the document.","3_1_1_H57.3.Lang":"The language specified in the lang attribute of the document element does not appear to be well-formed.","3_1_1_H57.3.XmlLang":"The language specified in the xml:lang attribute of the document element does not appear to be well-formed.","3_1_2_H58":"Ensure that any change in language is marked using the lang and/or xml:lang attribute on an element, as appropriate.","3_1_2_H58.1.Lang":"The language specified in the lang attribute of this element does not appear to be well-formed.","3_1_2_H58.1.XmlLang":"The language specified in the xml:lang attribute of this element does not appear to be well-formed.","3_1_3_H40,H54,H60,G62,G70":"Check that there is a mechanism available for identifying specific definitions of words or phrases used in an unusual or restricted way, including idioms and jargon.","3_1_4_G102,G55,G62,H28,G97":"Check that a mechanism for identifying the expanded form or meaning of abbreviations is available.","3_1_5_G86,G103,G79,G153,G160":"Where the content requires reading ability more advanced than the lower secondary education level, supplemental content or an alternative version should be provided.","3_1_6_H62.1.HTML5":"Ruby element does not contain an rt element containing pronunciation information for its body text.","3_1_6_H62.1.XHTML11":"Ruby element does not contain an rt element containing pronunciation information for the text inside the rb element.","3_1_6_H62.2":"Ruby element does not contain rp elements, which provide extra punctuation to browsers not supporting ruby text.","3_2_1_G107":"Check that a change of context does not occur when this input field receives focus.","3_2_2_H32.2":'This form does not contain a submit button, which creates issues for those who cannot submit the form using the keyboard. Submit buttons are INPUT elements with type attribute "submit" or "image", or BUTTON elements with type "submit" or omitted/invalid.',"3_2_3_G61":"Check that navigational mechanisms that are repeated on multiple Web pages occur in the same relative order each time they are repeated, unless a change is initiated by the user.","3_2_4_G197":"Check that components that have the same functionality within this Web page are identified consistently in the set of Web pages to which it belongs.","3_2_5_H83.3":"Check that this link's link text contains information indicating that the link will open in a new window.","3_3_1_G83,G84,G85":"If an input error is automatically detected in this form, check that the item(s) in error are identified and the error(s) are described to the user in text.","3_3_2_G131,G89,G184,H90":"Check that descriptive labels or instructions (including for required fields) are provided for user input in this form.","3_3_3_G177":"Check that this form provides suggested corrections to errors in user input, unless it would jeopardize the security or purpose of the content.","3_3_4_G98,G99,G155,G164,G168.LegalForms":"If this form would bind a user to a financial or legal commitment, modify/delete user-controllable data, or submit test responses, ensure that submissions are either reversible, checked for input errors, and/or confirmed by the user.","3_3_5_G71,G184,G193":"Check that context-sensitive help is available for this form, at a Web-page and/or control level.","3_3_6_G98,G99,G155,G164,G168.AllForms":"Check that submissions to this form are either reversible, checked for input errors, and/or confirmed by the user.","4_1_1_F77":'Duplicate id attribute value "{{id}}" found on the web page.',"4_1_2_H91.A.Empty":"Anchor element found with an ID but without a href or link text. Consider moving its ID to a parent or nearby element.","4_1_2_H91.A.EmptyWithName":"Anchor element found with a name attribute but without a href or link text. Consider moving the name attribute to become an ID of a parent or nearby element.","4_1_2_H91.A.EmptyNoId":"Anchor element found with no link content and no name and/or ID attribute.","4_1_2_H91.A.NoHref":"Anchor elements should not be used for defining in-page link targets. If not using the ID for other purposes (such as CSS or scripting), consider moving it to a parent element.","4_1_2_H91.A.Placeholder":"Anchor element found with link content, but no href, ID or name attribute has been supplied.","4_1_2_H91.A.NoContent":"Anchor element found with a valid href attribute, but no link content has been supplied.","4_1_2_input_element":"input element","4_1_2_role_of_button":'element has a role of "button" but',"4_1_2_element_content":"element content","4_1_2_element":"element","4_1_2_msg_pattern":"This {{msgNodeType}} does not have a name available to an accessibility API. Valid names are: {{builtAttrs}}.","4_1_2_msg_pattern2":"This {{msgNodeType}} does not have a value available to an accessibility API.","4_1_2_msg_add_one":"Add one by adding content to the element.","4_1_2_msg_pattern3":"This {{msgNodeType}} does not have an initially selected option. Depending on your HTML version, the value exposed to an accessibility API may be undefined.","4_1_2_value_exposed_using_attribute":"A value is exposed using the {{requiredValue}} attribute.","4_1_2_value_exposed_using_element":"A value is exposed using the {{requiredValue}} element."},_global.translation.ja={auditor_name:"HTML_CodeSniffer",auditor_using_standard:"Using standard",auditor_standards:"適合レベル",auditor_code_snippet:"コードスニペット",auditor_close:"閉じる",auditor_select_types:"レポートに含める報告の種類を選択してください",auditor_home:"ホーム",auditor_view_report:"レポートをみる",auditor_report:"レポート",auditor_back_to_report:"レポートに戻る",auditor_previous_issue:"前の報告",auditor_next_issue:"次の報告",auditor_issue:"報告",auditor_of:"/",auditor_errors:"エラー",auditor_error:"エラー",auditor_warnings:"警告",auditor_warning:"警告",auditor_notices:"通知",auditor_notice:"通知",auditor_toggle_display_of:"Toggle display of",auditor_messages:"メッセージ",auditor_unable_to_point:"この報告に関係する要素の位置を特定できません。",auditor_unable_to_point_entire:"この報告はドキュメント全体に関係するため、問題の位置を特定できません。",auditor_unable_to_point_removed:"この要素はレポート作成後に削除されたため、要素の位置を特定できません。",auditor_unable_to_point_outside:"この要素はドキュメントボディの外に位置するため、要素の位置を特定できません。",auditor_unable_to_point_hidden:"この要素はビューから隠れているか、視覚表現をもたないため、要素の位置を特定できません。",auditor_point_to_element:"要素の位置を特定",auditor_unsupported_browser:"このコードスニペットの機能は、このブラウザでサポートされていません。",auditor_page:"ページ",auditor_updated_to:"HTML_CodeSniffer のバージョンがアップデートされました",auditor_view_the_changelog:"更新履歴をみる",auditor_success_criterion:"成功基準",auditor_suggested_techniques:"推奨される手法",auditor_applies_entire_document:"これはドキュメント全体に適用されます","1_1_1_H30.2":"img 要素がこのリンクの唯一のコンテンツですが、 alt テキストがありません。 alt テキストがリンクの目的を説明するべきです。","1_1_1_H67.1":"空の alt テキストをもつ img 要素は title 属性をもたないか、または、空でなければなりません。","1_1_1_H67.2":"img 要素は支援技術に無視されるようマークアップされています。","1_1_1_H37":"Img 要素に alt 属性が不足しています。 alt 属性で短い代替テキストを明示してください。","1_1_1_G94.Image":"img 要素 の alt テキストが、この画像と同じ目的や情報を提供していることを確認してください。","1_1_1_H36":"画像による送信ボタンに alt 属性が不足しています。このボタンの機能を説明する代替テキストを alt 属性で明示してください。","1_1_1_G94.Button":"画像による送信ボタンの代替テキストがそのボタンの目的を特定していることを確認してください。","1_1_1_H24":"イメージマップのArea 要素に alt 属性が不足しています。各 area 要素は、そのイメージマップエリアの機能を説明する代替テキストを持たなければなりません。","1_1_1_H24.2":"area 要素の代替テキストが、参照するイメージマップ画像の部分と同じ目的を提供していることを確認してください。","1_1_1_G73,G74":"もし短い代替テキストでこのイメージが十分に説明できないなら、ボディテキストやリンクなどを通じて長い代替テキストを提供してください。","1_1_1_H2.EG5":"リンク内の img 要素は 代替テキストにリンクのコンテンツのテキストの複製を使用してはなりません。","1_1_1_H2.EG4":"テキストリンクと隣り合うリンク内の img 要素の alt 属性が指定されていないか空になっています。テキストと画像のリンクを一つにまとめることを検討してください。","1_1_1_H2.EG3":"テキストリンクと隣り合うリンク内の img 要素の alt 属性にテキストリンクの内容の複製を使用してはいけません。","1_1_1_H53,ARIA6":"他のすべての選択肢が尽きた後は、 object 要素に代替テキストを含める必要があります。","1_1_1_G94,G92.Object,ARIA6":"短い(適切な場合は長い)代替テキストが、同じ目的を果たし同じ情報を提示する非テキストコンテンツに対して提供されていることを確認してください。","1_1_1_H35.3":"applet 要素をサポートしていないブラウザでは、 applet 要素の要素本文に代替テキストを含める必要があります。","1_1_1_H35.2":"applet 要素をサポートしているがロードできないブラウザに対して代替テキストを提供するために、 applet 要素は alt 属性を含まなければなりません。","1_1_1_G94,G92.Applet":"非テキストコンテンツに対して、同じ目的を果たし、かつ同じ情報を示す短い(適切な場合は長い)代替テキストが提供されていることを確認してください。","1_2_1_G158":"この埋め込みオブジェクトに録音済みの音声のみが含まれていて、テキストコンテンツの代替として提供されていない場合は、代替テキストバージョンが利用可能であることを確認してください。","1_2_1_G159,G166":"この埋め込みオブジェクトに録画済みの映像のみが含まれており、テキストコンテンツの代替として提供されていない場合は、代替テキストバージョンが利用可能であるか、同等の情報を示す音声トラックが提供されていることを確認してください。","1_2_2_G87,G93":"この埋め込みオブジェクトに事前に記録された同期したメディアが含まれており、テキストコンテンツの代替として提供されていない場合は、音声コンテンツ用のキャプションが提供されていることを確認してください","1_2_3_G69,G78,G173,G8":"この埋め込みオブジェクトに事前に記録された同期したメディアが含まれていて、テキストコンテンツの代替として提供されていない場合は、その映像の音声説明および/またはコンテンツの代替テキストバージョンが提供されていることを確認してください。","1_2_4_G9,G87,G93":"この埋め込みオブジェクトに同期したメディアが含まれている場合は、ライブの音声コンテンツにキャプションが提供されていることを確認してください。","1_2_5_G78,G173,G8":"この埋め込みオブジェクトに事前に記録された同期したメディアが含まれている場合は、その映像コンテンツに音声の説明があることを確認してください。","1_2_6_G54,G81":"この埋め込みオブジェクトに記録済みの同期したメディアが含まれている場合は、その音声に手話の解釈が提供されていることを確認してください。","1_2_7_G8":"この埋め込みオブジェクトに同期したメディアが含まれていて、前景音の一時停止による音声解説が収録済映像の意味を伝えるのに不十分な場合、スクリプトまたは代替バージョンで拡張音声解説が提供させていることを確認してください。","1_2_8_G69,G159":"この埋め込みオブジェクトに事前に記録された同期したメディアまたは映像のみのコンテンツが含まれている場合は、コンテンツの代替テキストバージョンが提供されていることを確認してください。","1_2_9_G150,G151,G157":"この埋め込みオブジェクトにライブの音声のみのコンテンツが含まれている場合は、そのコンテンツの代替テキストバージョンが提供されていることを確認してください。","1_3_1_F92,ARIA4":'この要素の役割は"プレゼンテーション"ですが、セマンティックな意味を持つ子要素を含みます。',"1_3_1_H44.NonExistent":'このラベルの "for" 属性に、ドキュメントに存在しない ID が含まれています。',"1_3_1_H44.NonExistentFragment":'このラベルの "for" 属性に、ドキュメントフラグメントに存在しない ID が含まれています。',"1_3_1_H44.NotFormControl":'このラベルの "for" 属性には、フォームコントロールでない要素の ID が含まれています。目的の要素に正しい ID を入力していることを確認してください。',"1_3_1_H65":'このフォームコントロールには、空またはスペースのみを含む "title" 属性があります。ラベリングテストの目的では無視されます。',"1_3_1_ARIA6":'このフォームコントロールには、空またはスペースのみを含む "aria-label" 属性があります。ラベリングテストの目的では無視されます。',"1_3_1_ARIA16,ARIA9":'このフォームコントロールには aria-labelledby 属性が含まれていますが、要素には存在しないID "{{id}}" が含まれています。 aria-labelledby 属性はラベリングテストの目的では無視されます。',"1_3_1_F68.Hidden":"この hidden のフォームフィールドには何らかの方法でラベルが付けられています。 hidden のフォームフィールドにラベルを付ける必要はありません。","1_3_1_F68.HiddenAttr":'このフォームフィールドは( "hidden" 属性を使用して)非表示にすることを目的としていますが、何らかの方法でラベル付けされています。隠しフォームフィールドにラベルを付ける必要はありません。',"1_3_1_F68":'このフォームフィールドは何らかの方法でラベル付けされるべきです。 label 要素( "for" 属性を持つかフォームフィールドを囲む)、または "title"、 "aria-label" 、または "aria-labelledby" 属性を適切に使用してください。',"1_3_1_H49.":"HTML5では時代遅れになっているプレゼンテーションマークアップが使用されています。","1_3_1_H49.AlignAttr":"属性を揃えます","1_3_1_H49.Semantic":"強調テキストまたは特殊テキストには、プログラム的に決定できるようセマンティックマークアップが使用されるべきです。","1_3_1_H49.AlignAttr.Semantic":"強調テキストまたは特殊テキストには、プログラム的に決定できるようセマンティックマークアップが使用されるべきです。","1_3_1_H42":"このコンテンツが見出しとして意図されている場合は、見出しマークアップを使用する必要があります。","1_3_1_H63.3":"テーブルセルに無効な scope 属性があります。有効な値は、 row 、 col 、 rowgroup 、または colgroup です。","1_3_1_H63.2":"他の要素の見出しとして機能する td 要素のスコープ属性は、HTML5では廃止されました。代わりに th 要素を使用してください。","1_3_1_H43.ScopeAmbiguous":"複数のレベルの見出しを持つテーブルでは、 th 要素のスコープ属性はあいまいです。代わりに td 要素の headers 属性を使用してください。","1_3_1_H43.IncorrectAttr":'この td 要素のヘッダー属性が正しくありません。 "{{expected}}" を予期していましたが、 "{{actual}}" を検出しました',"1_3_1_H43.HeadersRequired":"td 要素とそれに関連する th 要素の関係は定義されていません。このテーブルには複数レベルの th 要素があるため、 td 要素には headers 属性を使用する必要があります。","1_3_1_H43.MissingHeaderIds":"このテーブルに id 属性を含まない th 要素があります。これらのセルは、それらが td 要素の headers 属性によって参照されるように ID を含むべきです。","1_3_1_H43.MissingHeadersAttrs":"このテーブルに headers 属性を含まない td 要素があります。各 headers 属性は、そのセルに関連付けられているすべての th 要素の ID を列挙する必要があります。","1_3_1_H43,H63":"td 要素とそれに関連する th 要素の関係は定義されていません。 th 要素に scope 属性を使用するか、td 要素に headers 属性を使用してください。","1_3_1_H63.1":"このテーブルに scope 属性をもたない th 要素があります。これらのセルは、 td 要素との関連を識別するための scope 属性を含むべきです。","1_3_1_H73.3.LayoutTable":"このテーブルはレイアウトに使用されているように見えますが、 summary 属性が含まれています。レイアウトテーブルに summary 属性を含めないか、または、指定されている場合は空にしてください。","1_3_1_H39,H73.4":"このテーブルがデータテーブルで、 summary 属性と caption 要素の両方が存在する場合、 summary は caption を複製しないでください。","1_3_1_H73.3.Check":"このテーブルがデータテーブルである場合は、 summary 属性がテーブルの構成を説明していること、またはテーブルの使用方法を説明していることを確認してください。","1_3_1_H73.3.NoSummary":"このテーブルがデータテーブルの場合は、 table 要素の summary 属性を使用してこのテーブルの概要を説明してください。","1_3_1_H39.3.LayoutTable":"このテーブルはレイアウトに使用されているように見えますが、 caption 要素が含まれています。レイアウトテーブルに caption を含めることはできません。","1_3_1_H39.3.Check":"このテーブルがデータテーブルの場合は、 caption 要素がこのテーブルを正確に記述していることを確認してください。","1_3_1_H39.3.NoCaption":"このテーブルがデータテーブルである場合は、このテーブルを識別するために table 要素に caption 要素を使用することを検討してください。","1_3_1_H71.NoLegend":"フィールドセットに legend 要素が含まれていません。すべてのフィールドセットには、フィールドグループの説明を記述する legend 要素を含める必要があります。","1_3_1_H85.2":"この選択リストに関連オプションのグループが含まれている場合は、それらを optgroup とグループ化する必要があります。","1_3_1_H71.SameName":"これらのラジオボタンまたはチェックボックスにさらにグループレベルの説明が必要な場合は、それらを fieldset 要素に含める必要があります。","1_3_1_H48.1":"このコンテンツは、プレーンテキストを使用して番号なしリストをシミュレートしているように見えます。もしそうなら、 ul 要素でこの内容をマークアップすることで文書に適切な構造情報を追加します。","1_3_1_H48.2":"このコンテンツは、プレーンテキストを使用して番号付きリストをシミュレートしているように見えます。もしそうなら、 ol 要素でこの内容をマークアップすることで文書に適切な構造情報を追加します。","1_3_1_G141_a":"見出し構造が論理的にネストされていません。この h{{headingNum}} 要素は主な文書見出しであるようにみえるため、 h1 要素であるべきです。","1_3_1_G141_b":"見出し構造が論理的にネストされていません。適切にネストするには、この h{{headingNum}} 要素を h{{properHeadingNum}} にする必要があります。","1_3_1_H42.2":"見出しタグがコンテンツなしで見つかりました。見出しとして意図されていないテキストは、見出しタグでマークアップしてはいけません。","1_3_1_H48":"この要素にナビゲーションセクションが含まれる場合は、リストとしてマークアップすることを推奨します。","1_3_1_LayoutTable":"このテーブルはレイアウトテーブルのようにみえます。もしデータテーブルであることを意図している場合、 th 要素を使用することでヘッダーセルが識別されるようにしてください。","1_3_1_DataTable":"このテーブルはデータテーブルのようにみえます。もしレイアウトテーブルであることを意図している場合は、 th 要素がないこと、および summary または caption がないことを確認してください。","1_3_2_G57":"スタイルシートが無効になっている場合など、線形化されたときにコンテンツが意味のある順序で並べられていることを確認してください。","1_3_3_G96":"コンテンツを理解するための説明が提供されている場合は、オブジェクトを説明するために(形状、サイズ、場所などの)感覚的な特性だけに頼らないでください。","1_4_1_G14,G18":"色だけを使って伝えられる情報がテキストや他の視覚的な手がかりを通しても利用可能であることを確認してください。","1_4_2_F23":"この要素に3秒を超えて自動再生される音声が含まれている場合は、音声を一時停止、停止、またはミュートする機能があることを確認してください。","1_4_3_F24.BGColour":"この要素に継承された前景色があり、対応するインラインの背景色または画像を引き立てていることを確認してください。","1_4_3_F24.FGColour":"この要素に継承された背景色または画像があり、対応するインラインの前景色を引き立てていることを確認してください。","1_4_3_G18_or_G145.Abs":"この要素は絶対位置に配置されているため、背景色を決定できません。テキストと背景の覆われた部分すべてのコントラスト比が少なくとも{{required}}:1であることを確認してください。","1_4_3_G18_or_G145.BgImage":"この要素のテキストは背景画像に配置されます。テキストと画像の覆われている部分すべてのコントラスト比が少なくとも{{required}}:1であることを確認してください。","1_4_3_G18_or_G145.Alpha":"この要素のテキストまたは背景は透明部分を含みます。テキストと背景のコントラスト比が少なくとも{{required}}:1であることを確認してください。","1_4_3_G18_or_G145.Fail":"この要素は、この適合レベルではコントラストが不十分です。少なくとも{{required}}:1のコントラスト比が必要ですが、この要素のテキストのコントラスト比は{{value}}:1です。","1_4_3_G18_or_G145.Fail.Recomendation":"推奨: ","1_4_3_G18_or_G145.Fail.Recomendation.Text":"文字色を{{value}}に変更する","1_4_3_G18_or_G145.Fail.Recomendation.Background":"背景を{{value}}に変更する","1_4_4_G142":"コンテンツや機能を損なうことなく、支援技術なしでテキストを200パーセントまでリサイズできることを確認してください。","1_4_5_G140,C22,C30.AALevel":"使用している技術で意図した視覚的提示が可能である場合、文字画像ではなくテキストが情報伝達に用いられているか確認してください。ただし、文字画像が、伝えようとする情報にとって必要不可欠であるか、または、利用者の要求に応じて視覚的にカスタマイズできる場合を除きます。","1_4_6_G18_or_G17.Abs":"この要素は絶対位置に配置されているため、背景色を決定できません。テキストと背景の覆われた部分すべてのコントラスト比が少なくとも{{required}}:1であることを確認してください。","1_4_6_G18_or_G17.BgImage":"この要素のテキストは背景画像に配置されます。テキストと画像の覆われている部分すべてのコントラスト比が少なくとも{{required}}:1であることを確認してください。","1_4_6_G18_or_G17.Fail":"この要素は、この適合レベルではコントラストが不十分です。少なくとも{{required}}:1のコントラスト比が必要ですが、この要素のテキストのコントラスト比は{{value}}:1です。","1_4_6_G18_or_G17.Fail.Recomendation":"推奨: ","1_4_6_G18_or_G17.Fail.Recomendation.Text":"文字色を{{value}}に変更する","1_4_6_G18_or_G17.Fail.Recomendation.Background":"背景を{{value}}に変更する","1_4_7_G56":"主に(ナレーションなどの)スピーチである要素内の事前録音された音声のみのコンテンツでは、背景音はミュート可能であるか、またはスピーチより少なくとも20dB(または約4倍)静かである必要があります。","1_4_8_G148,G156,G175":"ウェブページまたはブラウザを介して、ユーザーがテキストブロックの前景色と背景色を選択できるメカニズムがあることを確認してください。","1_4_8_H87,C20":"テキストブロックの幅を80文字以下(中国語、日本語、または韓国語のスクリプトでは40文字以下)に縮小するメカニズムが存在することを確認してください。","1_4_8_C19,G172,G169":"テキストブロックが両端揃えされていないこと、または両端揃えを削除するためのメカニズムが存在することを確認してください。","1_4_8_G188,C21":"テキストブロック内の行間隔が段落内で少なくとも150%であり、段落間隔が行間隔の少なくとも1.5倍であること、またはこれを達成するためのメカニズムが使用可能であることを確認してください。","1_4_8_H87,G146,C26":"ユーザーがフルスクリーンウィンドウ上で水平にスクロールすることを必要とせずに、支援技術なしでテキストを200パーセントまでリサイズできることを確認してください。","1_4_9_G140,C22,C30.NoException":"テキストのイメージが純粋な装飾のためか、または、伝えられる情報にテキストの特定の表現が不可欠である場合にだけ使われているか確認してください。","2_1_1_G90":"この要素のイベントハンドラによって提供される機能がキーボードから利用可能であることを確認してください。","2_1_1_SCR20.DblClick":"この要素をダブルクリックすることで提供される機能がキーボードから利用可能であることを確認してください。","2_1_1_SCR20.MouseOver":"この要素の上にマウスを置くことで提供される機能がキーボードから利用可能であることを確認してください。たとえば、フォーカスイベントの使用などです。","2_1_1_SCR20.MouseOut":"この要素からマウスを外すことによって提供される機能がキーボードを通して利用可能であることを確認してください。たとえば、 blur イベントの使用などです。","2_1_1_SCR20.MouseMove":"この要素上でマウスを動かすことによって提供される機能がキーボードを通して利用可能であることを確認してください。","2_1_1_SCR20.MouseDown":"この要素をマウスオーバーすることで提供される機能がキーボードから利用可能であることを確認してください。たとえば、 keydown イベントの使用などです。","2_1_1_SCR20.MouseUp":"この要素にマウスを合わせることで提供される機能がキーボードから利用可能であることを確認してください。たとえば、 keyup イベントの使用などです。","2_1_2_F10":"このアプレットまたはプラグインが、キーボードを使用しているときにフォーカスをそれ自体から遠ざける機能を提供することを確認してください。","2_2_1_F40.2":"別のページにリダイレクトするために使用される Meta リフレッシュタグの制限時間が0ではありません。ユーザーはこの制限時間を制御できません。","2_2_1_F41.2":"現在のページを更新するために meta リフレッシュタグが使用されています。ユーザーはこの更新の制限時間を制御できません。","2_2_2_SCR33,SCR22,G187,G152,G186,G191":"コンテンツの一部が5秒より長く移動、スクロール、点滅、または自動更新される場合は、コンテンツを一時停止、停止、非表示にできるメカニズムがあることを確認してください。","2_2_2_F4":"この点滅している要素を5秒以内に止めることができるメカニズムがあることを確認してください。","2_2_2_F47":"blink 要素は、点滅情報を5秒以内に停止できるという要件を満たせません。","2_2_3_G5":"タイミングがコンテンツによって提示されるイベントまたはアクティビティの重要な部分でないことを確認してください。ただし、インタラクティブでない同期したメディアおよびリアルタイムイベントを除きます。","2_2_4_SCR14":"緊急時の中断を除いて、すべての中断(コンテンツの更新を含む)がユーザーによって延期または抑制できることを確認してください。","2_2_5_G105,G181":"このウェブページが無活動時間制限のある一連のウェブページの一部である場合は、認証されたユーザーが再認証後にデータを失うことなくアクティビティを続行できることを確認してください。","2_3_1_G19,G176":"コンテンツのすべてのコンポーネントが、どの1秒間においても3回を超えて点滅していないこと、または点滅している領域のサイズが十分に小さいことを確認してください。","2_3_2_G19":"コンテンツのすべてのコンポーネントが、どの1秒間においても3回を超えて点滅していないことを確認してください。","2_4_1_H64.1":"iframe 要素には、フレームを識別する空でない title 属性が必要です。","2_4_1_H64.2":"この要素の title 属性にフレームを識別するテキストが含まれていることを確認してください。","2_4_1_G1,G123,G124,H69":"一般的なナビゲーション要素はすべて迂回できることを確認してください。例えば、スキップリンク、ヘッダ要素、または ARIA ランドマークを使用します。","2_4_1_G1,G123,G124.NoSuchID":'このリンクはドキュメント内の名前付きアンカー "{{id}}" を指していますが、その名前のアンカーは存在しません。',"2_4_1_G1,G123,G124.NoSuchIDFragment":'このリンクはドキュメント内の名前付きアンカー "{{id}}" を指していますが、テストされたフラグメント内にその名前のアンカーは存在しません。',"2_4_2_H25.1.NoHeadEl":"説明的な title 要素を配置するための head セクションがありません。","2_4_2_H25.1.NoTitleEl":"head セクションの空でない title 要素を使って、文書にタイトルをつけるべきです。","2_4_2_H25.1.EmptyTitle":"head セクションの title 要素が空ではありません。","2_4_2_H25.2":"title 要素が文書を説明していることを確認してください。","2_4_3_H4.2":"tabindex が使用されている場合は、 tabindex 属性で指定されたタブ順序がコンテンツ内の関係に従っていることを確認してください。","2_4_4_H77,H78,H79,H80,H81,H33":"プログラムで解釈されるリンクのコンテキストまたはその title 属性と組み合わせたときに、リンクテキストからリンクの目的が判断できることを確認してください。","2_4_4_H77,H78,H79,H80,H81":"プログラムで解釈されるリンクのコンテキストと組み合わせたときに、リンクテキストからリンクの目的が判断できることを確認してください。","2_4_5_G125,G64,G63,G161,G126,G185":"このウェブページが一連のプロセスの一部でない場合は、ウェブページ一式の中でこのウェブページを見つける方法が複数あることを確認してください。","2_4_6_G130,G131":"見出しとラベルがトピックや目的を説明していることを確認してください。","2_4_7_G149,G165,G195,C15,SCR31":"キーボードフォーカスのインジケータをユーザーインターフェイス操作子に視覚的に配置できる操作モードが少なくとも1つあることを確認してください。","2_4_8_H59.1":"link 要素はドキュメントのヘッドセクションにのみ配置できます。","2_4_8_H59.2a":"link 要素に、リンクタイプを識別する空でない rel 属性がありません。","2_4_8_H59.2b":"link 要素に、リンクされているリソースを指す空でない href 属性がありません。","2_4_9_H30":"リンクテキストがリンクの目的を説明していることを確認してください。","3_1_1_H57.2":"html 要素には、ドキュメントの言語を記述する lang 属性または xml:lang 属性を含める必要があります。","3_1_1_H57.3.Lang":"document 要素の lang 属性に指定されている言語が整形式ではないようです。","3_1_1_H57.3.XmlLang":"document 要素の xml:lang 属性に指定されている言語が整形式ではないようです。","3_1_2_H58":"言語の変更が、要素の lang 属性または xml:lang 属性、あるいはその両方を使用して適切にマークアップされていることを確認してください。","3_1_2_H58.1.Lang":"この要素の lang 属性に指定されている言語は、整形式ではないようです。","3_1_2_H58.1.XmlLang":"この要素の xml:lang 属性に指定されている言語は、整形式ではないようです。","3_1_3_H40,H54,H60,G62,G70":"慣用句や専門用語を含む、特殊または制限された用法の単語やフレーズの特定の定義を識別するためのメカニズムが利用可能であることを確認してください。","3_1_4_G102,G55,G62,H28,G97":"展開形式または略語の意味を識別するためのメカニズムが利用可能であることを確認してください。","3_1_5_G86,G103,G79,G153,G160":"コンテンツが中等教育レベルよりも高度な読解力を必要とする場合は、補足的なコンテンツまたは代替バージョンを提供する必要があります。","3_1_6_H62.1.HTML5":"ruby 要素が、本文の発音情報を含む rt 要素を含んでいません。","3_1_6_H62.1.XHTML11":"ruby 要素が、 rb 要素内のテキストの発音情報を含む rt 要素を含んでいません。","3_1_6_H62.2":"ruby 要素に rp 要素が含まれていません。これは、ルビテキストをサポートしていないブラウザに余分な句読点を提供します。","3_2_1_G107":"この入力フィールドがフォーカスを受けたときにコンテキストの変更が起こらないことを確認してください。","3_2_2_H32.2":'このフォームには送信ボタンがありません。キーボードを使用してフォームを送信できないユーザーに問題が発生します。送信ボタンは、 type 属性が "submit" または "image" の INPUT 要素、またはタイプが "submit" または省略/無効の BUTTON 要素です。',"3_2_3_G61":"複数のウェブページ上で繰り返されているナビゲーションのメカニズムは、繰り返されるたびに相対的に同じ順序で出現することを確認してください。ただし、利用者が変更した場合を除きます。","3_2_4_G197":"このウェブページ内で同じ機能を有するコンポーネントが、それが属するウェブページ一式の中で一貫して識別できることを確認してください。","3_2_5_H83.3":"このリンクのリンクテキストに、リンクが新しいウィンドウで開くことを示す情報が含まれていることを確認してください。","3_3_1_G83,G84,G85":"この形式で入力エラーが自動的に検出された場合は、エラーのある項目が識別され、エラーがテキストでユーザーに説明されていることを確認してください。","3_3_2_G131,G89,G184,H90":"このフォームのユーザー入力に説明ラベルまたは説明(必須フィールドを含む)が指定されていることを確認してください。","3_3_3_G177":"コンテンツのセキュリティや目的を損なうことがない限り、このフォームがユーザー入力の誤りに対する推奨される修正を提供することを確認してください。","3_3_4_G98,G99,G155,G164,G168.LegalForms":"このフォームがユーザーに財務上または法律上のコミットメントを義務付ける場合、ユーザーが制御可能なデータを修正または削除する、またはテスト回答を送信する場合は、送信が可逆であるか、入力エラーのチェックを行っているか、またはユーザーによる確認を行っているかを確認してください。","3_3_5_G71,G184,G193":"ウェブフォームやコントロールレベルで、このフォームの状況依存ヘルプが利用できることを確認してください。","3_3_6_G98,G99,G155,G164,G168.AllForms":"このフォームへの送信が可逆であるか、入力エラーのチェックを行っているか、またはユーザーによる確認を行っているかを確認してください。","4_1_1_F77":'ウェブページに重複したid属性値 "{{id}}" が見つかりました。',"4_1_2_H91.A.Empty":"アンカー要素がID付きで見つかりましたが href またはリンクテキストがありません。このIDを親または近くの要素に移動することを検討してください。","4_1_2_H91.A.EmptyWithName":"name属性を持つアンカー要素が見つかりましたが、 href またはリンクテキストがありません。 name 属性を親または近くの要素のIDになるように移動することを検討してください。","4_1_2_H91.A.EmptyNoId":"アンカー要素にリンクのコンテンツがなく、name または ID 属性もありません。","4_1_2_H91.A.NoHref":"アンカー要素をページ内リンクの対象の定義に使用するべきではありません。このIDが別の目的(CSSやスクリプト等)で使用されていないなら、親要素へ移動することを検討してください。","4_1_2_H91.A.Placeholder":"有効なリンクのコンテンツをもつアンカー要素が見つかりましたが、 href 、 ID 、 name のいずれの属性も与えられていません。","4_1_2_H91.A.NoContent":"有効なhref属性をもつアンカー要素が見つかりましたが、リンクのコンテンツが与えられていません。","4_1_2_input_element":"input 要素","4_1_2_element_content":"要素のコンテンツ","4_1_2_element":"要素","4_1_2_msg_pattern":"この {{msgNodeType}} は、アクセシビリティAPIに名前を提供していません。有効な名前は: {{builtAttrs}}.","4_1_2_msg_pattern_role_of_button":'この要素は "button" ロールをもっていますが、アクセシビリティAPIに名前を提供していません。有効な名前は: {{builtAttrs}}.',"4_1_2_msg_pattern2":"この {{msgNodeType}} は、アクセシビリティAPIに値を提供していません。","4_1_2_msg_add_one":"要素にコンテントを追加することで一つ追加します。","4_1_2_msg_pattern3":"この {{msgNodeType}} は、初期の選択項目をもっていません。お使いのHTMLバージョンによっては、アクセシビリティAPIから見える値は未定義となるかもしれません。","4_1_2_value_exposed_using_attribute":"{{requiredValue}} 属性を使用することで値が露出します。","4_1_2_value_exposed_using_element":"{{requiredValue}} 要素を使用することで値が露出します。"},_global.translation.pl={auditor_name:"Squiz HTML_CodeSniffer",auditor_using_standard:"Używany standard",auditor_standards:"Standardy",auditor_code_snippet:"Fragment kodu",auditor_close:"Zamknij",auditor_select_types:"Wybierz typy błędów, które mają być w raporcie",auditor_home:"Home",auditor_view_report:"Zobacz Raport",auditor_report:"Raport",auditor_back_to_report:"Powrót do Raportu",auditor_previous_issue:"Poprzedni Problem",auditor_next_issue:"Następny Problem",auditor_issue:"Problem",auditor_of:"z",auditor_errors:"Błędy",auditor_error:"Błąd",auditor_warnings:"Ostrzeżenia",auditor_warning:"Ostrzeżenie",auditor_notices:"Uwagi",auditor_notice:"Uwaga",auditor_toggle_display_of:"Przełącz wyświetlanie",auditor_messages:"komunikatów",auditor_unable_to_point:"Nie można wskazać elementu powiązanego z tym kryterium.",auditor_unable_to_point_entire:"Nie można wskazać tego problemu, ponieważ dotyczy on całego dokumentu.",auditor_unable_to_point_removed:"Nie można wskazać tego elementu, ponieważ został on usunięty z dokumentu od momentu wygenerowania raportu.",auditor_unable_to_point_outside:"Nie można wskazać tego elementu, ponieważ znajduje się poza elementem treści dokumentu.",auditor_unable_to_point_hidden:"Nie można wskazać tego elementu, ponieważ jest on niewidoczny lub nie ma reprezentacji wizualnej.",auditor_point_to_element:"Pokaż element",auditor_unsupported_browser:"Funkcja nie jest obsługiwana w tej przeglądarce.",auditor_page:"Strona",auditor_updated_to:"HTML_CodeSniffer został zaktualizowany do wersji",auditor_view_the_changelog:"Zobacz dziennik zmian",auditor_success_criterion:"Kryteria sukcesu",auditor_suggested_techniques:"Sugerowane techniki",auditor_applies_entire_document:"Dotyczy to całego dokumentu","1_1_1_H30.2":"Grafika jest jedyną treścią linku i powinna zostać uzupełniona o opis alternatywny opisujący jego funkcję.","1_1_1_H67.1":"Grafika pełni funkcję dekoracyjną zarówno atrybut alt jak i title powinny być puste.","1_1_1_H67.2":"Grafika jest oznaczona jako dekoracyjna i będzie ignorowana przez technologie wspomagające np. czytniki ekranu dla osób niewidomych.","1_1_1_H37":"Znacznik nie ma atrybutu alt. Dodaj ten atrybut i wpisz do niego krótki opis grafiki.","1_1_1_G94.Image":"Upewnij się, że opis alternatywny grafiki przekazuje tę samą informację, co sama grafika.","1_1_1_H36":"Przycisk graficzny nie ma atrybutu alt. Dodaj do przycisku atrybut alt i opisz w nim funkcję przycisku.","1_1_1_G94.Button":"Upewnij się, że opis alternatywny przycisku prawidłowo opisuje funkcję przycisku.","1_1_1_H24":"Element w mapie obrazkowej nie ma atrybutu alt. Każdy taki obszar powinien mieć atrybut alt z opisem alternatywnym, który odpowiednio opisuje dany obszar.","1_1_1_H24.2":"Upewnij się, że opis alternatywny obszaru odpowiada jego funkcji lub treści.","1_1_1_G73,G74":"Jeśli krótki opis alternatywny nie opisuje wystarczająco treści prezentowanej przez grafikę, dodaj rozszerzony opis bezpośrednio na stronie lub na oddzielnej stronie.","1_1_1_H2.EG5":"Opis alternatywny elementu umieszczonego wewnątrz linku, nie może być taki sam jak tekst samego linku.","1_1_1_H2.EG4":"Element znajdujący się wewnątrz linku nie ma atrybutu alt lub alt jest pusty. Ponieważ w sąsiedztwie znajduje się link tekstowy zaleca się połączenie tych elementów w jedno łącze ze wspólnym opisem.","1_1_1_H2.EG3":"Element znajdujący się wewnątrz linku nie może mieć opisu alternatywnego tej samej treści, co link tekstowy znajdujący się w jego sąsiedztwie.","1_1_1_H53,ARIA6":"Element musi zawierać atrybut alt z wprowadzonym opisem alternatywnym o ile nie została zapewniony żaden inny alternatywny opis tego elementu.","1_1_1_G94,G92.Object,ARIA6":"Należy sprawdzić czy krótkie lub długie teksty alternatywne są dostępne dla wszystkich elementów nietekstowych i możliwie najdokładniej je opisują.","1_1_1_H35.3":" powinien zawierać opis alternatywny wewnątrz znaczników . Zapewni to alternatywę w przeglądarkach, które nie obsługują elementu .","1_1_1_H35.2":"Applet powinien mieć opis alternatywny w atrybucie alt, aby zapewnić wsparcie w przypadku problemów z załadowaniem zawartości.","1_1_1_G94,G92.Applet":"Należy sprawdzić czy krótkie lub długie teksty alternatywne są dostępne dla wszystkich elementów nietekstowych i możliwie najdokładniej je opisują.","1_2_1_G158":"Treść przedstawiona w sposób dźwiękowy powinna zostać uzupełniona dodatkową transkrypcją lub opisem alternatywnym.","1_2_1_G159,G166":"Jeśli obiekt wideo (bez dźwięku) zamieszczony na stronie nie jest alternatywą dla tekstu, sprawdź czy istnieje do niego alternatywa tekstowa lub ścieżka dźwiękowa prezentująca tę samą treść.","1_2_2_G87,G93":"Jeśli obiekt wideo ze ścieżką audio nie jest alternatywą dla tekstu, sprawdź czy materiał ma napisy dla niesłyszących.","1_2_3_G69,G78,G173,G8":"Jeśli obiekt wideo ze ścieżką audio nie jest alternatywą dla tekstu, sprawdź czy materiał zawiera dodatkowo audiodeskrypcję obrazu i/lub opis alternatywny dla treści przedstawionych wyłącznie w formie obrazu.","1_2_4_G9,G87,G93":"Sprawdź czy materiał wideo prezentowany na żywo ma napisy dla niesłyszących tworzone na żywo.","1_2_5_G78,G173,G8":"Sprawdź czy materiał wideo ma dołączoną audiodeskrypcję obrazu.","1_2_6_G54,G81":"Sprawdź czy materiał wideo ma dołączone tłumaczenie na język migowy.","1_2_7_G8":"Jeśli materiał wideo, nie ma wystarczających pauz, by uzupełnić go o audiodeskrypcję, sprawdź czy zamieszczona jest alternatywna wersja lub rozszerzona ścieżka dźwiękowa.","1_2_8_G69,G159":"Sprawdź czy materiał wideo lub wideo (sam obraz) jest umieszczony wraz z alternatywą tekstową.","1_2_9_G150,G151,G157":"Sprawdź czy material audio przekazywany na żywo jest umieszczony wraz z wersją tekstową tworzoną na żywo.","1_3_1_F92,ARIA4":'Ten element ma przypisaną rolę "prezentacja" ale zawiera też konkretne treści.',"1_3_1_H44.NonExistent":'Atrybut "for" znacznika