Skip to content.
Adrian Roselli AI-Powered Monetization System MVP

All Posts

Switch Role Support

Whether you use a <button> or <input type=”checkbox”> as the basis for your switch depends on a few factors: Use <button> if: you can count on JavaScript being available, and flipping the switch has an immediate effect. Go read Under-Engineered Toggles Too. Use <input type=”checkbox”> if: you want to progressively…

Posted:

Tags: accessibility, ARIA, pattern, standards

Blaming Screen Readers 🚩×5

The title of this post is pretty specific. It relates to the meme on Twitter where users identify a trait or preference that they see as problematic, and identify it as a red flag. The emoji represents the red flag. For example: A stylized red flag Blaming Screen Readers 🚩🚩🚩🚩🚩…

Posted:

Tags: accessibility, browser, rant, usability, UX

Beware False Negatives

Automated accessibility testing tools are rightly wary of giving false positives. You don’t want to flag something as an error in a test only to have the team rebuild an entire thing for no reason (never mind the risk of introducing errors). We know automated accessibility testing tools can really…

Posted:

Tags: html, rant, standards, WCAG

#UserWay Will Get You Sued

Thanks to a comment on my post #accessiBe Will Get You Sued, I found UserWay had taken the meat of that post, re-cast as its own effort, and was using it as a marketing effort to frame its overlay as a better product than accessiBe. Excerpts from the post that…

Posted:

Tags: accessibility, rant, standards, UX

Sentence Forms (not Mad Libs)

Whether you call them sentence forms, narrative forms, fill-in-the-blank forms, or Mad Libs forms, you are probably describing a form where the fields are interspersed within words in a sentence. Unlike more traditional forms, laid out with simple pairings of labels and fields, these forms are meant to be read…

Posted:

Tags: accessibility, html, pattern, usability, UX

Scroll Snap Challenges

Though JS-free fixed table row and column headers have been possible for quite some time, Safari’s and Chrome’s recent fixes got some people pretty excited. Enough that folks are copying code samples in whole, without always paying attention to necessary considerations. That same excited demo included other CSS properties that…

Posted:

Tags: accessibility, css, pattern, standards, tables, usability, UX, WCAG

Stop Using ‘Pop-up’

TL;DR: Stop using the word pop-up. Instead choose a term that accurately describes the control you want. I encourage you to read my post Stop Using ‘Drop-down’, which provides the set-up for this post. Along with another term I would prefer everyone stopped using. As you embark on a design,…

Posted:

Tags: html, pattern, standards

Using CSS to Enforce Accessibility

The CSS3 logo as a head atop a torso with its arms folded across its chest. I am a big proponent of the First Rule of ARIA (don’t use ARIA). But ARIA brings a lot to the table that HTML does not, such as complex widgets and state information that…

Posted:

Tags: accessibility, ARIA, css

Multi-Column Sortable Table Experiment

This post expands on what I covered in my April 2021 post, Sortable Table Columns. You may want to read that first to understand the broader challenges and techniques for making a table sortable by one column at a time. That last statement is what matters here. ARIA 1.1 says…

Posted:

Tags: accessibility, ARIA, pattern, tables, UX

Embracing Design Constraints

Form ever follows function. Louis Sullivan Louis Sullivan, the father of the modern skyscraper, espoused this belief throughout his work. He recognized that the purpose of the building, when entering a place with no prior art, had to drive how it would look. With both the technology and audience providing…

Posted:

Tags: accessibility, design, usability, UX

XPath for In-Browser Testing

Both Chrome and Firefox support XPath searches when in the DOM view of their dev tools. Because the browser cleans whatever HTML it encounters (closing tags, correcting nesting), XPath can operate on the code as XML. Simple checks like finding a unique ID value can result in multiple hits in…

Posted:

Tags: browser, Chrome, Firefox, html

Sortable Table Columns

An accessible sortable table is not necessarily the same as a usable sortable table. Outline: Basics Let The User Know This Thing Has Sorted Screen Reader Announcement Sort Arrows Column Background Column Background via <col> Let The User Know This Thing Sorts SVGs Layout Windows High Contrast Mode Screen Readers…

Posted:

Tags: accessibility, ARIA, pattern, tables, UX