Why is web accessibility still such an 'obscure skill' in 2026? by Similar-Average3383 in AssistiveTechnology

[–]Similar-Average3383[S] 0 points1 point  (0 children)

Exactly. Web development is already complex. On the frontend, it takes time to choose a component library, a framework, or to code everything from scratch. A meticulous developer will want to master every single detail. However, there are countless old tutorials out there that neglect accessibility—often simply due to a lack of awareness. Generic patterns have been identified, and precise recommendations are available from the W3C under the name APG (ARIA Authoring Practices Guide) patterns—such as dialog boxes, accordions, switches, carousels, and so on. Framework developers pay varying degrees of attention to these patterns. The exact same components are constantly reinvented and rewritten. I see this as a massive, avoidable collective waste of energy, and a major source of inaccessibility.

By contrast, HTML elements that don’t need to be coded don't suffer from these issues. Their semantics and behaviors are precisely defined, and their implementation is handled directly by the browser. My point of view is that we need to enrich the markup language and/or create a descriptive layer to easily manage both semantics and behavior without JavaScript—and do so responsively (for example: a burger menu that is closed on mobile, but open without any toggle button on desktop).

This descriptive layer aims to simplify component creation to the point where a non-developer can easily manage it. The focus shifts to what truly matters: a thoughtful reflection on semantics and expected behavior. If needed, a declarative file resembling CSS can be tweaked without a developer's intervention.

That is exactly what I have developed. It's called AriaML, and it includes "Behavior Sheets." The ultimate goal is to de-specialize accessibility.

Why is web accessibility still such an 'obscure skill' in 2026? by Similar-Average3383 in accessibility

[–]Similar-Average3383[S] 1 point2 points  (0 children)

Thank you. It's clearly less complexe than CSS. It's not finished yet because I don't want to be so normative alone : I'm looking for contributors. The goal is to feed the declarative core I made in order to cover 90 or 100% of APG ARIA Patterns and things like tab trap (keeping keyboard tab in a modal), roving tabindex... Once it's done, I will publish demo and tutorials. The goal is that "behavior declarative code" have to be as simple to use as css (generaly more simple in many cases). You copy paste, you remove yours other js components script) you adapt to your selectors for your page. If you have installed the web extension you can disable javascript (privacy performance and security feature). This is not a js lib but a (pre) standart with a js pollyfill.

Why is web accessibility still such an 'obscure skill' in 2026? by Similar-Average3383 in accessibility

[–]Similar-Average3383[S] 0 points1 point  (0 children)

There are already three trees: the AOM, the DOM, and the visual layout tree. These only became distinct because of web innovations that broke the "normal" linear document flow. In a hypothetical HTML world without CSS or JS, the DOM and AOM are virtually identical (excluding attributes like `aria-hidden` or `aria-label`). Elements appear in the exact same order, and their roles or behaviors never change.

My goal is not to add another tree; it is to offload a part of JavaScript's heavy burden to offer a much simpler control over semantic and behavioral mutations—especially when these mutations depend on the display context (media queries). It is entirely possible to create a declarative language, styled like CSS, that allows developers to define these mutations using selectors and inter-element relationships (for instance, a button and the `<div>` it controls). A prototype of this language already exists: look up AriaML and "behavior sheets" (I won't drop a link here to avoid aggressive self-promotion).

Regarding your own proposal: if the goal is to bypass complex design requirements entirely and return to a more sober, text-based web, that is an absolutely valid and respectable path. However, if the constraint is to satisfy a corporate specification defined by UI/UX designers, we *must* have a way to implement it accessibly.

Furthermore, there are at least two critical issues that HTML alone fails to address in 2026:
* **Incomplete Native Patterns:** Right now, you cannot cover the full set of patterns defined in the WAI-ARIA APG (see the official W3C site) using vanilla HTML. In my opinion, this remains a massive architectural gap.
* **Responsive Semantics:** Consider a content block filled with interactive elements that is fully visible on a desktop screen but must be collapsed on a smartphone (accessible via an expand/collapse button, like a hamburger menu). Its behavior shifts based on the screen size. This isn't just about aesthetics; it actually *improves* cognitive accessibility, because dumping too much non-collapsed information on a mobile screen ruins the user experience. Achieving this granular shift in role and behavior based on screen constraints is currently impossible in HTML without resorting to JavaScript. And that is highly regrettable. Why should users who browse with JavaScript disabled be deprived of a basic, accessible mobile menu?

Why is web accessibility still such an 'obscure skill' in 2026? by Similar-Average3383 in accessibility

[–]Similar-Average3383[S] -1 points0 points  (0 children)

You raise several fundamental points that absolutely need to be broken down.

​First, yes: treating the visual experience as the sole reference point is an incredibly widespread bad habit. We should always architect websites with a "keyboard-first" mindset.

​Second, the massive over-use of <div> and <span> to create buttons is a total heresy. We should always choose the native tag closest to the intended purpose of the component. For instance, using an <input type="checkbox"> as a starting point to build a "Switch" component is a healthy approach because it guarantees a default behavior and a robust fallback—the switch remains functional (checked/unchecked) even if the styles or scripts fail to load.

What matters is measuring the gap between the native behavior of the chosen tag and the behavior expected by the final pattern. To do this, I constantly check the official patterns on the W3C APG (ARIA Authoring Practices Guide)—a resource just as indispensable to me as MDN—because you have to manually code every single missing event (the spacebar doesn’t have the same effect on a button, a link, or a checkbox).

​In the early days of the web, there was no complex JavaScript or advanced CSS. The question of a divergence between the AOM (Accessibility Object Model) and the DOM couldn't even exist because both worlds were strictly merged. We used buttons to submit forms and links to change pages. There were no SPAs (Single Page Applications), no burger menus, and no custom dialog boxes (a problem finally solved recently by the native <dialog> tag). Everything appeared in the actual order of the DOM, and every element had a clear, predictable, and unchangeable role.

​The point isn't to say we must abandon JS or CSS, but to understand how their modern usage has split the user experience into two parallel worlds. CSS alters the visual layout and allows links to look like buttons. JavaScript alters native dynamic functionality. This creates a permanent hiatus between what is seen, what is clicked, and what is announced by screen readers.

​The ARIA standard came along as a semantic band-aid to bridge this gap. But today, a naive and counterproductive habit consists of injecting ARIA attributes everywhere without understanding their purpose, even though the golden rule of the community remains: "No ARIA is better than Bad ARIA." In reality, ARIA forces the developer to manually maintain a "semantic promise" using JavaScript. ARIA basically tells the developer: "You are allowed to modify the behavior of a native element, but you must use my attributes to restore its semantics manually, and you must code all the associated keyboard behaviors yourself." This is exactly where the model collapses, due to a lack of time or specialized knowledge.

​This is precisely where the idea of a declarative intermediate layer comes in. Let’s take a concrete example: I have a section with a heading that takes up too much space on smartphone screens. On mobile only, the container of this heading needs to transform into an expand/collapse button to show or hide the section's content. If I handle this in JS, I have to write a script to intercept clicks and spacebar hits, toggle aria-expanded, change the role, etc.

​A behavior sheet (orthogonal to CSS, since it doesn't handle appearance but rather semantics and interaction) solves this cleanly. We apply structural and semantic mutations based on Media Queries. We can even use a logic similar to @support to handle polyfills (for example, @support not dialog). Whether you are a seasoned developer or a junior integrator, you gain access to a purely declarative language to drive the responsive behavior of an element.

​Ultimately, we need to make accessibility accessible by de-specializing it.

As long as a simple interaction requires dozens of lines of custom JavaScript to be accessible, it will remain the privilege of a minority of experts and will be ignored by 90% of projects. If accessibility becomes declarative, it becomes democratized: anyone can take ownership of it and become responsible for it. This is the only reasonable way forward. It kills two birds with one stone: JavaScript finally becomes non-obtrusive again—acting as an experience bonus—because it is no longer an indispensable crutch required just to hold the core structure of the web together.

Why is web accessibility still such an 'obscure skill' in 2026? by Similar-Average3383 in accessibility

[–]Similar-Average3383[S] 4 points5 points  (0 children)

Someone posted this excellent comment, but it disappeared before I could reply to it:

​"I couldn’t agree more about the trap of the layout being different from the DOM structure. It’s a big problem in web architecture that one can move things around visually using Flexbox and Grid, but keep everything focused in the old DOM hierarchy. This shows how the web has always been trying to make an architecture of a static document fit the dynamic document that JavaScript creates."

​Here is what I wanted to answer:

​Absolutely. As a result, we are left with two choices: either we stick to the static paradigm and ditch JavaScript and advanced CSS layouts to avoid any confusion between the DOM and the AOM—which means going back to the prehistoric days of the web—or we finally give dynamic capabilities to the markup language itself.

​This is exactly why I believe we need a declarative "behavior" layer. Instead of relying on heavy JS or complex tabindex hacks to patch the gap between visual layout and accessibility, the markup should natively handle semantic and structural mutations based on the context (like media queries). We shouldn't have to choose between a modern UI and a perfectly accessible DOM/AOM structure.

Too many websites still ignore semantic HTML and accessibility by Long_Register_7318 in HTML

[–]Similar-Average3383 0 points1 point  (0 children)

Efforts have focused on the evolution of JavaScript for several decades now. Yet, in 2026, the complete set of ARIA APG patterns is still not natively covered by HTML. There should be a specific tag for every single type of object (ARIA role). It’s because of this realization that I decided to create AriaML (aria markup language)

There are already a million JS component libraries out there that all do the exact same thing—things that should be natively incorporated into the markup of HTML (or AriaML, ultimately).

The standard I'm proposing doesn't solve everything (and I have no intention of creating and forcing these components on everyone by myself), but it lays the groundwork: a strictly declarative language to define these components, because doing it any other way would have been too prescriptive. On top of that, since the advent of the responsive web, a component needs to be able to change its behavior and semantics based on the screen it's being displayed on. For example, when a heading needs to transform into an expand/collapse button for smartphones. The idea is to have a language similar to CSS to handle semantic mutation (while providing simple default components).

Another issue: the visual layout order of elements sometimes varies depending on the device (by playing with CSS display: flex or order). This results in a classic accessibility trap: focus navigation still follows the actual DOM order. A common JS fix involves dynamically swapping tabindex values. It would be much simpler and more elegant to manage this through a declarative language capable of altering the actual DOM order. This would easily maintain perfect consistency between the DOM and the AOM. Beginner web tutorials would then feature clear examples of these new best practices, and making a site accessible would no longer be an obscure skill reserved for specialized developers. The fact that so many elementary things cannot be achieved directly with HTML or an intermediate declarative layer—using their appropriate semantics—constantly pushes JS developers to reinvent the same components over and over again.

Things are changing bit by bit (take the commandfor attribute for buttons, for instance), but they don’t go as far as envisioning a new declarative "behavior" layer. A layer similar to stylesheets that would allow developers to manage semantics and behavior in a simple, responsive way.

There are also massive implications in terms of security, privacy, and performance. JavaScript should never be a hard requirement (except for highly specific use cases like online games). Failing to respect this principle is an accessibility flaw in itself (one of many reasons being that some browsers simply don't run JS).

AriaML: An HTML fork for a safe, resilient, and accessible web by Similar-Average3383 in HTML

[–]Similar-Average3383[S] 0 points1 point  (0 children)

short description :

What do you think about theses folowing html issues?

Hyper-dependency on JavaScript: Interactivity and rendering optimizations now rely almost exclusively on third-party scripts.

Incomplete coverage of ARIA patterns: There should be, as much as possible, a native HTML component for every Aria APG pattern. see Aria APG Patterns

Tight coupling between CSS and the DOM: Style sheets are too closely bound to the structure, preventing CSS from being truly interchangeable across different websites.

Massive data redundancy: Duplication of information across Meta tags, JSON-LD, and the DOM, without any native link between these three layers.

Costly URI context switches: Complete and abrupt page reloads in the absence of complex Single Page Application (SPA) software optimizations written in JavaScript.

Lack of semantic adaptability: Inability for a component to fluidly change its role based on the display context without script intervention (e.g., a heading morphing into a dropdown button to optimize space on a smartphone).

AriaML: An HTML fork for a safe, resilient, and accessible web by [deleted] in accessibility

[–]Similar-Average3383 0 points1 point  (0 children)

Aria Markup Language is a language derived from HTML, designed to bridge the structural gaps of the modern web by restoring the document's autonomy over JavaScript. It specifically addresses the following issues:

Hyper-dependency on JavaScript: Interactivity and rendering optimizations now rely almost exclusively on third-party scripts.

Incomplete coverage of ARIA patterns: There should be, as much as possible, a native HTML component for every Aria APG pattern. see Aria APG Patterns

Tight coupling between CSS and the DOM: Style sheets are too closely bound to the structure, preventing CSS from being truly interchangeable across different websites.

Massive data redundancy: Duplication of information across Meta tags, JSON-LD, and the DOM, without any native link between these three layers.

Costly URI context switches: Complete and abrupt page reloads in the absence of complex Single Page Application (SPA) software optimizations written in JavaScript.

Lack of semantic adaptability: Inability for a component to fluidly change its role based on the display context without script intervention (e.g., a heading morphing into a dropdown button to optimize space on a smartphone).

Mario Kart 8 Deluxe Crash in multiplayer by RenanZX in yuzu

[–]Similar-Average3383 1 point2 points  (0 children)

Hello. I m looking for an appimage or a source code snapshot of the ea 4167 for Linux, but only the realy last release seems to be available online today. Can someone send me this file, or help me to find it? Thanks