使用 .NET API 选择 Web 可访问性规则
Aspose.HTML for .NET
提供
AccessibilityRules
规则库,其中包含 WCAG 2.0 原则、指南、成功标准和技术。按代码选择所需规则,创建 AccessibilityValidator,并检查 HTML 文件或网页中的相关可访问性问题。
当项目遵循明确的可访问性策略或需要测试某类问题时,选择特定规则非常有用。验证报告会显示哪些检查失败以及哪些 HTML 元素需要处理。
按照选定的 WCAG 规则检查 HTML
此示例选择四项 HTML 技术,涵盖图像替代文本、表单标签、iframe 标题和唯一元素 ID。GetRules() 返回匹配的 IRule 对象,然后将其传递给专项验证器。
验证所选可访问性规则的 C# 代码
using System;
using System.Collections.Generic;
using System.IO;
using Aspose.Html;
using Aspose.Html.Accessibility;
using Aspose.Html.Accessibility.Results;
string documentPath = Path.Combine("data", "input.html");
string[] ruleCodes = { "H37", "H44", "H64", "H93" };
WebAccessibility webAccessibility = new WebAccessibility();
// Retrieve only the requested accessibility rules
IList<IRule> selectedRules = webAccessibility.Rules.GetRules(ruleCodes);
AccessibilityValidator validator = webAccessibility.CreateValidator(
selectedRules,
ValidationBuilder.All);
// Validate the document against the selected rules
using HTMLDocument document = new HTMLDocument(documentPath);
ValidationResult validationResult = validator.Validate(document);
if (!validationResult.Success)
{
Console.WriteLine(validationResult.SaveToString());
}
如何验证特定可访问性规则
- 创建
WebAccessibility
对象并访问其
Rules规则库。 - 定义项目验证策略所需的原则、指南、标准或技术代码。
- 将代码传递给 GetRules() ,并确认每项请求的规则均已返回。
- 使用返回的
IList<IRule>创建 AccessibilityValidator 。 - 使用
HTMLDocument
加载 HTML,调用
Validate(),然后查看或保存返回的报告。
了解可访问性规则层次结构
- 原则。 WCAG 顶级类别描述可访问内容的总体目标。
- 指南。 每项原则包含用于组织相关可访问性要求的指南。
- 成功标准。 提供可测试的要求,并标明 A、AA 或 AAA 一致性级别。
- 技术和失败模式。
H37等技术代码描述实现检查,失败代码标识违反标准的模式。 - 按代码选择。
GetRules()接受一个或多个代码,并忽略规则库中不存在的代码。 - 专项验证。 选定规则可用于项目特定检查,但有限的规则列表不能构成完整的可访问性审计。
如果应用程序需要广泛检查或通过生成器筛选,而不是明确的规则代码列表,请使用 HTML 可访问性验证器 。
WCAG 规则文档和参考资料
有关完整的规则库层次结构以及 GetPrinciple()、GetGuideline()、GetCriterion() 和 GetRules() 示例,请阅读
Web 可访问性规则
。W3C 的
WCAG Techniques
索引介绍各项技术和失败代码的用途及测试步骤。
安装 Aspose.HTML for .NET
使用 .NET CLI 从 NuGet 安装 Aspose.HTML for .NET :
dotnet add package Aspose.HTML
您也可以使用 NuGet 包管理器界面,或在包管理器控制台中运行 Install-Package Aspose.HTML。有关配置详情,请参阅
安装指南
;如需不受评估版限制地测试 API,请申请
临时许可证
。
Web 可访问性规则常见问题
1. WCAG 成功标准与技术有什么区别?
成功标准是用于判断 WCAG 一致性的可测试要求。技术描述满足标准的一种已记录方法,而失败模式描述不符合标准的情况。仅通过一项技术不能证明符合 WCAG。
2. 如何在 C# 中仅验证特定 WCAG 规则?
将所需代码传递给 AccessibilityRules.GetRules(),使用返回的 IList<IRule> 创建 AccessibilityValidator,然后验证 HTMLDocument。报告将限定为所选规则范围和适用的生成器设置。
3. GetRules() 可以接受原则、指南、标准和技术吗?
可以。这些规则类型均实现 IRule,因此可以将其代码传递给 GetRules()。应选择符合目标范围的层级;较高级别的对象包含更广泛的规则组,而技术代码只针对特定检查。
4. 如果找不到请求的可访问性规则代码,会发生什么?
在这种情况下,GetRules() 方法会忽略规则库中不存在的代码。验证前请比较返回的集合和请求的代码,避免拼写错误或不支持的代码在未被发现的情况下缩小检查范围。
5. 验证选定规则能证明符合 WCAG 吗?
不能。这只能证明文档经过所选自动检查。WCAG 一致性要求评估所有适用的成功标准,包括需要手动测试和人工判断的要求。