Avinash M.’s Post

Day 72 of 2026 ♿ I used to think building for accessibility just meant adding `alt` tags to images so the linter warnings would go away. I was wrong. I was locking 15% of the internet out of my app. Status: Opening the Digital Doors 🚪 Early on, I built a beautiful, custom animated dropdown menu. I was so proud of it—until I tried to navigate my site using only my keyboard. I couldn't open the menu. I couldn't checkout. The site was completely broken for anyone not using a mouse. I stopped prioritizing aesthetics over usability and deployed the "Universal Access" Protocol: 🚫 1. The "Div-itis" Epidemic I used to style `tags to look like buttons because it was easier. The Fix: A screen reader doesn't know a` is clickable. If it triggers an action, it must be a `<button>`. Semantic HTML is the foundation of accessible code. 🎯 2. The Focus Ring Crime I hated the blue outline browsers put around clicked elements, so I would globally set `outline: none;` in my CSS. The Fix: This destroys keyboard navigation. Users literally cannot see where they are on the page. Never remove the default focus outline without replacing it with a custom, highly visible `:focus-visible` state. 🌗 3. The Contrast Trap I loved using light gray text on a white background for a "sleek, minimalist" look. The Fix: It’s unreadable for visually impaired users (or people outside in the sun). I now strictly run my color palettes through a contrast checker to ensure a minimum 4.5:1 ratio. ----- Resource 📚 👉 WAVE Web Accessibility Evaluation Tool: Run your site through this free browser extension. It highlights exactly where your code is failing visually impaired users. ----- 👇 Devs, what is the most common accessibility sin you see? (My Answer: A. Styling `tags as buttons is an epidemic in modern web dev). A: Styling` tags as buttons B: Removing focus outlines (`outline: none;`) C: Terrible, unreadable color contrast Powered by: 🧠 Mindset: Inclusive Engineering ⚡ Protocol: Universal Access #FrontendDev #WebAccessibility #CleanCode #ReactJS #BuildInPublic #Day72 : Avinash

To view or add a comment, sign in

Explore content categories