Developers often ask how various CSS declarations translate to the screen reader experience. Properties that are strictly visual—such as color, border, font, margin, padding—are transparent, but what about those that inject content, like ::before and ::after? What about properties that communicate meaning, like list-style and line-through? And then there are those that visually position or crop content, like clip, position, display, overflow, height, width, visibility… the list goes on. We all know that using CSS to generate content is bad, just as we all know that we should never ever exceed the speed limit. It happens.