I’ve spend a fair amount of time on website optimization (YSlow, Google’s Page Speed, etc), and now I’m thinking more and more about improving the accessibility of my websites.
However, it seems like that they are competing interests at times. If I include separate style sheets for screen readers, mobile devices, etc, those are additional files to download. Similarly, there are many files that would be unnecessary for visitors using screen readers, mobile devices, etc.
So where does that leave us? Server-side browser sniffing? I imagine that would only help in a limited set of cases. Are there teams out there (e.g. at Google or Yahoo) that are actively working on these issues or have come out with some recommended practices?
One interesting approach that I read about for this optimizing the request size but maintaining accessibility is to store the accessibility class (screen reader, mobile device, etc.) in the session. In the case that the accessibility class is not stored in the session (for instance, first page load – session start), send all style sheets (etc), and detect the accessibility class using Javascript. Send this back and store it in the session for the future. Where the session does store the accessibility class, simply transmit only the appropriate style sheet (etc).