Sounds about right!
* http://departments.risd.edu/registrar/web/1112cat.pdf (a number of classes focus on grid systems. this is one of the most respected design programs in the country)
* http://graphicdesigntheory.net/Images/DT/Armstrong_GDTsyllabus.pdf
* http://pacificgraphicdesign.wordpress.com/courses/graphic-design-ii-2/graphic-design-ii-syllabus/Regardless of whether you use bootstrap or not you are always going to be specifying CSS classes which describe the presentation of elements, not sure how else it can be done?
Screen reader software will generally ignore anything that it doesn't understand or deem irrelevant.
Whenever I have tried screen readers they will say "ok, there's 3 divs with content here. Let's read them out one at a time or just read the headings and wait for the user to select one". How they are arranged in a grid will be irrelevant to the software.
Does bootstrap present some particular problem for screen readers?
You are yet to explain what you think best practices should be here.
http://coding.smashingmagazine.com/2012/06/19/classes-where-...
>Screen reader software will generally ignore anything that it doesn't understand or deem irrelevant.
Yes, that's the problem. Putting useful information in places where software has no way to understand it.
>Whenever I have tried screen readers they will say "ok, there's 3 divs with content here. Let's read them out one at a time or just read the headings and wait for the user to select one".
And if you had the appropriate tag instead of a meaningless div, it would know what to do. That's the point. Google for semantic html.
You aren't putting "useful information" in the classes, you are putting presentation related information in there, if you are displaying the content non-visually it is irrelevant and can be safely ignored.
Writing semantic HTML is nice for bots and browsers, but there is nothing stopping you from doing this whilst using bootstrap or whatever. Another thing to consider is that bootstrap aims for backwards compatibility so you are going to be restricted by tags that can be supported by old versions of IE etc.
Even if you could write perfect semantic HTML I don't see how that would make it bad practice to organise your pages using grids?
"This is navigation" is not just presentation, it is real, meaningful information.
>Writing semantic HTML is nice for bots and browsers, but there is nothing stopping you from doing this whilst using bootstrap or whatever
The contortions it would take to make bootstrap work with proper markup would consume far more time than simply writing correct CSS to begin with.
Here is one of the sample bootstrap pages: http://twitter.github.com/bootstrap/examples/hero.html
If you disable CSS in your browser you can still view the page and it is still perfectly functional and should work fine with a decent screenreader.
I'm hugely confused by what you mean by "proper markup", bootstrap does not do markup itself, you create the markup and apply bootstrap's CSS classes to make it look a certain way.
Could you provide a link to a page that you would use as an example of how it should be "done right"?