4 ms·
He seems to argue that alternative renderings - eg. for blind users - could be generated on the server rather than the client. This glosses over the important p
by olavk 17y ago
He seems to argue that alternative renderings - eg. for blind users - could be generated on the server rather than the client. This glosses over the important point that nobody is actually going to do that.
The beauty of correct use of html and css is that the burden of choosing an appropriate rendering is pushed to the client, which in turn means that the developer does not have to know in advance what kind of devices or assistive technologies will be used to render the content.
- jerf 17y agoIf I may monkeypatch the original argument, I'd point out that there isn't any particular reason that you can't output perfectly accessible HTML with this approach. In some ways its likely to be easier than some other approaches, since when you think this way, you're starting out with more actual, factual semantics in your data representation. Moreover, if you're going to argue the "nobody's actually going to do it" argument, I'd say that "nobody's actually using CSS to generate one HTML page that works in a screen reader, cell phone, rich browser, and REST API" either. For the same value of "nobody", which is to say, not literally nobody, you can find a handful of people, but the idea that there's some mass of developers "correctly" using CSS is pretty silly too.
- olavk 17y agoObviously if you generate semantic HTML there is no problem. But the article argues (in the end) that accessibility instead can be achieved by generating different "object-html" renderings on the server based on e.g a header that says "i am blind". That is totally unrealistic! Semantic HTML on the other hand is accessible by default, you have to specifically go out of your way to make it inaccessible or platform-specific.
- __david__ 17y agoBut you also have to go way out of your way to make it look good. And with pure semantic HTML there are layouts that are flat out impossible. The only way to do certain things with CSS is by cluttering one's clean HTML with random divs everywhere (killing the markup/style separation in the process)... Where the author suggested outputting audio when confronted with a "blind" header, I thought more along the lines of returning pure semantic markup. And presumably the abstract code that compiles down to html is purely semantic so it would be trivial.
- jacquesm 17y agoI think HTML is intermediate code, not object code, not source code. Just like you could code assembly by hand (and plenty of people still do) you can code HTML by hand. But in reality most html is generated by machine and then 'rendered' into a visual representation, the final binary end-product.