Erreurs et avertissements – Vérification de l'accessibilité du Web à l'aide d'Aspose.HTML

Contents
[ Hide Show ]

Aspose.HTML for .NET fournit l’espace de noms Aspose.Html.Accessibility, qui est destiné à toutes les manipulations et vérifications liées à l’accessibilité du web. Cet article examine les classes et les interfaces qui aident à collecter les informations d’erreur et d’avertissement lors de la vérification de l’accessibilité d’un site web par rapport à la conformité aux WCAG. Nous accorderons une attention particulière aux critères d’échec et aux méthodes qui signalent les erreurs, et nous examinerons un exemple C# d’obtention d’erreurs d’accessibilité du web après la validation d’un document HTML.

L’article Accessibility Validator vous explique comment utiliser la classe AccessibilityValidator pour vérifier par programme l’accessibilité d’un site web.

La détection des erreurs permet d’identifier les obstacles susceptibles d’empêcher les personnes handicapées d’utiliser et d’interagir efficacement avec le contenu web. Les erreurs et les avertissements indiquent ce qu’il faut faire pour améliorer l’accessibilité du web. Ils servent de feuille de route aux développeurs et aux concepteurs pour qu’ils apportent les modifications nécessaires.

IError

L’ IError est une interface publique contenant des informations sur l’erreur de validation. Cela signifie que le contrôle est erroné, c’est-à-dire que la règle n’a pas été respectée, et que le résultat ne correspond pas à Accessibility.

PropertyDescription
ErrorMessageReturns a string message of the error or warning.
TargetReturns an HTML or CSS element where the error was found. The returned object is of type Target.
ErrorTypeNameDescription of the presentation of the error object. It has two options “Error” or “Warning”.
ErrorTypeReturns error type numeric value.
SuccessResult of this object.

L’objet IError a ces significations :

* ErrorType = 1 and Success = false – this means that the error is critical, and the result of the check is not performed.
* ErrorType = 2 and Success = true – this means that the error is not critical but has an informational character and displays hints for possible improvement. 

Le type d’erreur est déterminé par le type de technique :

Target

La Target est une classe publique qui contient l’élément HTML ou CSS du document dans lequel l’erreur a été trouvée.

PropertyDescription
ItemReturns Object of html or css element.
TargetTypeReturns the type of the contained object. Object type of TargetTypes.

TargetTypes

L’énumération TargetTypes des types d’éléments du document HTML contenant l’erreur :

ValueDescription
HTMLElementThe element containing the HTMLElement from document.
CSSStyleRuleThe element containing the CSSStyleRule from document.
CSSStyleSheetThe element containing the CSSStyleSheet from document.

Examinons le code C# permettant de parcourir les résultats du contrôle de l’accessibilité du web, en accordant une attention particulière aux critères d’échec et aux détails des méthodes qui signalent les erreurs. Exemple d’obtention des détails des erreurs et des éléments d’un document HTML :

  1. Utilisez la classe RuleValidationResult et parcourez les objets ruleResult contenus dans validationResult.Details. Ces objets représentent différents critères d’accessibilité.
  2. Imprimer le code et la description du critère et indiquer s’il a réussi ou non. Pour cela, utilisez les propriétés Code et Description de l’interface IRule.
  3. Utilisez la propriété Success pour vérifier les critères.
  4. Utilisez les objets ITechniqueResultruleDetail contenus dans ruleResult.Errors. Les objets ITechniqueResult représentent les résultats des règles individuelles pour le critère qui a signalé des erreurs.
  5. Imprime les informations relatives à la méthode, y compris le code de la méthode, l’état de réussite et la description.
  6. Utilisez la propriété IError pour obtenir l’objet error à partir de ruleDetail. La ruleDetail représente un problème d’accessibilité spécifique, et l’objet error contient des informations sur ce problème.
  7. Utilisez la propriété Target pour récupérer l’objet target associé à l’erreur. L’objet target représente typiquement l’élément HTML spécifique, la règle CSS, ou tout autre contenu qui a déclenché l’erreur d’accessibilité.
  8. Imprime des informations sur l’erreur. Elles comprennent le type d’erreur (error.ErrorTypeName) et le message d’erreur (error.ErrorMessage).
  9. Utilisez la propriété TargetType de la classe Target pour vérifier le type de l’objet cible. En fonction du type de l’objet cible, des informations spécifiques sont extraites et imprimées sur la console.
 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}

Voir aussi

  • Dans le chapitre Vérification de l’accessibilité du Web, vous apprendrez à vérifier l’accessibilité d’un site Web pour qu’il soit conforme aux WCAG ou qu’il réponde uniquement à des critères spécifiques en utilisant les classes et les méthodes des espaces de noms Aspose.Html.Accessibility et Aspose.Html.Accessibility.Results.
  • L’article Comment améliorer l’accessibilité d’un site Web explique comment rendre votre site Web accessible aux utilisateurs et comment vérifier la conformité de votre site aux WCAG à l’aide de l’API Aspose.HTML for .NET.
  • L’article Accessibilité aux lecteurs d’écran explique comment concevoir un site web pour l’accessibilité aux lecteurs d’écran conformément aux directives WCAG en utilisant l’API Aspose.HTML for .NET.
  • Dans l’article Accessibility Validator, vous découvrirez la classe AccessibilityValidator qui peut être utilisée pour tester les règles d’accessibilité du web telles que les principes, les lignes directrices et les critères.
  • Dans l’article Règles d’accessibilité du web, vous apprendrez à utiliser la classe AccessibilityRules, qui est un référentiel d’exigences, de critères de réussite et de techniques WCAG 2, pour les contrôles d’accessibilité du web.

Aspose.HTML propose gratuitement en ligne Vérificateur d’accessibilité Web. Cet outil analyse les pages web, valide leur conformité aux WCAG, identifie les problèmes et suggère des améliorations. Il vous permet de déterminer l’ampleur des corrections nécessaires et l’écart entre l’état actuel de votre site web ou de votre document HTML et les exigences des WCAG.

Texte “Vérificateur d’accessibilité Web”

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.