WCAG 2.1 is the latest set of standards published by the W3C to make digital content more accessible to people with disabilities, including those with cognitive impairments, low vision, and users of mobile devices.
This standard is a key part of the European Accessibility Act (EAA), which came into effect on June 28, 2019. Its purpose is to enhance the accessibility of products and services to people with disabilities. All members of the EU are required to follow the statements. They should be fully compliant with the requirements by June 28, 2025.
Why is this important?
These standards apply not only to governmental services but also to banks, online stores, software developers and online services and platforms.
Companies must ensure that their product complies with WCAG 2.1 to avoid administrative fees, market access restrictions or reputational damage. Also, companies can simply lose part of their audience who can’t use the service.
What does WCAG 2.1 include?
WCAG 2.1 is based on four main principles: Perceivable, Operable, Understandable, and Robust.
Each principle ensures that your product works for all users, including those who use assistive technology.
#1 Perceivable
The user should be able to perceive all information from the interface. This means that you must check if your interface has the following:
Requirement | Description |
Alternative text (Alt) | All images, icons and buttons should have descriptions. |
Structure | Content should have headings, lists, and forms. |
Contrast | Text and background contrast should be at least 4.5:1. |
Resizable text | A user should be able to scale text up to 200% |
Responsive layout | Content should be available on screens of different sizes. |
Contrast for UI elements | Buttons, inputs, and controls should be distinct. |

#2 Operable
A user should be able to interact with the interface via a keyboard, without a mouse. Here’s the list of requirements:
Requirement | Description |
Keyboard navigation | Allow full keyboard navigation, without a computer mouse. |
Skip navigation | Let users skip repeated content. |
Link names | The links should have a clear description (not “click here”). |
Visible focus | The currently focused element should be visually highlighted. |
No complex gestures | The app should not require gestures that are available only to some users. |

#3 Understandable
The interface and its behavior should be logical and predictable:
Requirement | Description |
Page language | You should define the main language of the content (lang=”en”, lang=”de”, and so on). |
Consistent navigation | Keep navigation consistent across screens. |
Input errors | Errors should be clearly shown in forms. |
Suggestions | Users should receive helpful suggestions for correcting errors. |
#4 Robust
Content should work reliably with assistive technology (e-books, and more).
Requirement | Description |
Valid code | HTML/CSS/JS must be syntactically correct. |
ARIA roles and labels | All UI elements should have ARIA marks (for example, aria-label, aria-checked). |
States of UI elements | The state of UI elements (active, selected, disabled) must be conveyed clearly. |
Who Should Pay Special Attention?
These guidelines are especially important for legacy versions of Delphi and .NET.
Delphi:
- All Delphi versions between Delphi 1 and Delphi XE6. These versions don’t support UI Automation and lack built-in support for interface scaling, high contrast modes, and keyboard accessibility. They rely on the VCL framework, which doesn’t include modern features for adaptability.
- Delphi with FireMonkey, up to Delphi 10.3 Rio. They have limited capabilities for working with UIA and ARIA attributes.
.NET:
- .NET Framework up to version 4.7.2 as they have limited support for Accessibility Insights, UI Automation, and ARIA attributes. These versions have problems with interface scaling and screen reader compatibility.
- WinForms (in older projects) were often developed without support for accessibility, missing AccessibleName, AccessibleRole, and keyboard navigation.
- WPF (up to .NET Core 3.0). Old applications often don’t implement AutomationPeer or visual focus styles like FocusVisualStyle.
How to Check Your App?
You can use the following tools to check accessibility compliance:
For Delphi/FireMonkey:
- UI Automation from Embarcadero
For .NET:
- Accessibility Insights for Windows
- Axe DevTools
- Screen readers: NVDA, JAWS, Narrator
If you want to be sure your application is compliant, the most effective approach is to request an expert accessibility audit.
Softacom can help. We specialize in modernization and migration of legacy applications, ensuring compliance with WCAG 2.1 standards – compatibility with screen readers, keyboard navigation, adaptive UI, high contrast, and more. This standard especially relates to companies with legacy software (Delphi and .NET Framework) that are operating in EU markets.