What to do:
- Always start with HTML
- Add presentation and behavior next
- Assume nothing about your audience
- Be as semantic as possible
- Use www.html5please.com
What not to do:
- Use inline style tags
- Implement security on the frontend
- Expect links to work only with JS - modals, AJAX, etc.
- Tell users to upgrade
- Start with a rich site and then work backward
Benefits:
- Starting with the basics makes cross-browser testing easier
- Makes your site more modular - can switch stylesheets or remove behavior on-the-fly
- Makes development in teams easier
Drawbacks:
- App- or game-like sites might be hard to support
- Supporting all browsers off-the-bat might slow down productivity
- Can't use cool new CSS3/HTML5 stuff in production yet
Schedule:
- Create a simple site with an HTML5 sectioning elements
- Add CSS
- Add JS
- Show site without CSS and JS added on
- Show site in IE6
- Install ChromeVox and read through site
- Explain browser "hacks"
- Explain JS feature testing (modernizr)
- Show what not to do
- Show HTML5 boilerplate