As a front end developer I try to build all my code in a semantic way – or at least what I believe is semantic – in the hopes that the final output is dynamic, easy to build upon for me or another developer and, most importantly, looks good across all screen sizes and devices.
We discuss semantic markup and accessibility almost on a daily basis in the Cargo office, and keeping up with that latest ‘do’s and dont’s’ while building a website can be tough, especially when it comes to factoring in browser support for these latest best practices.
The latest Shop Talk Show episode brings up some interesting points about accessibility, semantic code and the use of aria roles which is well worth a listen. It’s interesting to hear from accessibility experts about how code can be interpreted by screen readers and not just to assume the technologies will understand the code just because it follows the current industry best practices.
As with quite of lot of best practices, what is good or bad markup mostly comes down to personal opinion (which is touched on in the Shop Talk episode when talking about the or tag for menus) and causes quite a bit of ‘hot drama’.
A great point made by Derek Featherstone in the podcast is that “it all comes down to performance”.
I believe that you should use the code you think to be semantic and that works best for you, but sometimes you have to go down a different route if it’s what the project requires. At the end of the day, you’re building for a client and their users not for people who will read your code.
As with quite of lot of best practices, what is good or bad markup mostly comes down to personal opinion.