Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Aspose.HTML for .NET предоставляет пространство имен Aspose.Html.Accessibility, которое предназначено для всех манипуляций и проверок, связанных с веб-доступностью. В этой статье будут рассмотрены классы и интерфейсы, которые помогают собирать информацию об ошибках и предупреждениях при проверке доступности веб-сайта на соответствие требованиям WCAG. Мы уделим особое внимание критериям сбоев и методам, которые сообщают об ошибках, и рассмотрим пример C# получения ошибок веб-доступности после проверки HTML-документа.
Как использовать класс AccessibilityValidator для проверки веб-доступности вы можете узнать из статьи Accessibility Validator – Проверка доступности веб-сайта на C#.
Обнаружение ошибок помогает выявить препятствия, которые могут помешать людям с ограниченными возможностями эффективно использовать веб-контент и взаимодействовать с ним. Ошибки и предупреждения указывают, что необходимо предпринять для улучшения доступности Интернета. Они служат для разработчиков и дизайнеров дорожной картой для внесения необходимых изменений.
IError – это общедоступный интерфейс, содержащий информацию об ошибке проверки. Это означает ошибочную проверку, т. е. правило не было пройдено – и его результат не соответствует Accessibility.
| Property | Description |
|---|---|
| ErrorMessage | Returns a string message of the error or warning. |
| Target | Returns an HTML or CSS element where the error was found. The returned object is of type Target. |
| ErrorTypeName | Description of the presentation of the error object. It has two options “Error” or “Warning”. |
| ErrorType | Returns error type numeric value. |
| Success | Result of this object. |
Объект IError имеет такие значения:
* ErrorType = 1 and Success = false – это означает, что ошибка критическая и результат проверки не выполнен.
* ErrorType = 2 and Success = true – это означает, что ошибка не критична, а носит информационный характер, отображает подсказки по возможному улучшению.
Тип ошибки определяется типом technique:
ErrorType=1 и Success=false и это будет Ошибка – Error.ErrorType=2 и Success=true и это будет Предупреждение – Warning.Target – это общедоступный класс, который содержит элемент HTML или CSS документа, в котором была обнаружена ошибка.
| Property | Description |
|---|---|
| Item | Returns Object of html or css element. |
| TargetType | Returns the type of the contained object. Object type of TargetTypes. |
Перечисление TargetTypes типов элементов из HTML-документа, содержащего ошибку:
| Value | Description |
|---|---|
| HTMLElement | The element containing the HTMLElement from document. |
| CSSStyleRule | The element containing the CSSStyleRule from document. |
| CSSStyleSheet | The element containing the CSSStyleSheet from document. |
Давайте посмотрим на код C# для перебора результатов проверки веб-доступности, уделив особое внимание критериям сбоя и деталям методов, сообщающих об ошибках. Пример получения сведений об ошибках и элементов HTML-документа:
RuleResult, содержащиеся в ValidationResult.Details. Они представляют собой разные критерии доступности.result, содержащийся в ruleResult.Errors. Объекты
ITechniqueResult представляют результаты отдельных правил для критерия, сообщившего об ошибках.error.ErrorTypeName) и сообщение об ошибке (error.ErrorMessage). 1// Check HTML for WCAG compliance and output failed rule codes and error messages
2
3// Initialize a webAccessibility container
4WebAccessibility webAccessibility = new WebAccessibility();
5
6// Create an accessibillity validator with static instance for all rules from repository that match the builder settings
7AccessibilityValidator validator = webAccessibility.CreateValidator(ValidationBuilder.All);
8
9string documentPath = Path.Combine(DataDir, "input.html");
10
11// Initialize an object of the HTMLDocument class
12using (HTMLDocument document = new HTMLDocument(documentPath))
13{
14 // Check the document
15 ValidationResult validationResult = validator.Validate(document);
16
17 foreach (RuleValidationResult ruleResult in validationResult.Details)
18 {
19 // list only unsuccessful rule
20 if (!ruleResult.Success)
21 {
22 // print the code and description of the rule
23 Console.WriteLine("{0}:{1} = {2}", ruleResult.Rule.Code, ruleResult.Rule.Description, ruleResult.Success);
24 // print the results of methods with errors
25 foreach (ITechniqueResult ruleDetail in ruleResult.Errors)
26 {
27 // print the code and description of the method
28 StringBuilder str = new StringBuilder(string.Format("\n{0}: {1} - {2}",
29 ruleDetail.Rule.Code, ruleDetail.Success,
30 ruleDetail.Rule.Description));
31 // get an error object
32 IError error = ruleDetail.Error;
33 // get a target object
34 Target target = error.Target;
35 // get error type and message
36 str.AppendFormat("\n\n\t{0} : {1}", error.ErrorTypeName, error.ErrorMessage);
37 if (target != null)
38 {
39 // Checking the type of the contained object for casting and working with it
40 if (target.TargetType == TargetTypes.CSSStyleRule)
41 {
42 ICSSStyleRule cssRule = (ICSSStyleRule)target.Item;
43 str.AppendFormat("\n\n\t{0}", cssRule.CSSText);
44 }
45 if (ruleDetail.Error.Target.TargetType == TargetTypes.CSSStyleSheet)
46 str.AppendFormat("\n\n\t{0}", ((ICSSStyleSheet)target.Item).Title);
47
48 if (ruleDetail.Error.Target.TargetType == TargetTypes.HTMLElement)
49 str.AppendFormat("\n\n\t{0}", ((HTMLElement)target.Item).OuterHTML);
50 }
51 Console.WriteLine(str.ToString());
52 }
53 }
54 }
55}Смотрите также
Aspose.HTML предлагает бесплатный онлайн-сервис Проверка веб-доступности. Этот инструмент сканирует веб-страницы, проверяет их на соответствие WCAG, выявляет проблемы и предлагает улучшения. Получайте мгновенную информацию о соответствии вашего веб-сайта требованиям, что позволит вам определить объем необходимых исправлений и разрыв между текущим состоянием вашего веб-сайта или HTML-документа и требованиями WCAG.
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.