Should I teach CSS layout directly to new learners or should I first teach how to make layout with tables, then div+CSS?
And what should I teach between HTML or XHTML? Both are same so should I start directly with XHTML 1.0 Strict?
Should I teach CSS layout directly to new learners or should I first teach how to make layout with tables, then div+CSS?
And what should I teach between HTML or XHTML? Both are same so should I start directly with XHTML 1.0 Strict?
Whilst we all hate tables for layouts I think it's important to introduce them to the concept so they can understand exactly how important CSS is.
I would also suggest teaching them XHTML instead of HTML5, sure you can perhaps do a session on what HTML5 might be like when it's finally completed, but it's pointless doing this when it's so young, wait until they understand XHTML first.
You should teach CSS directly.
More importantly than "doing layouts" they need to understand the Separation Of Layers: Content, Presentation, And Behavior. As soon as you teach them the better.
If you're concerned about CSS complexity, just do simple exercises. About XHTML of HTML, choose one to teach, stick to it and after they are confortable with you say there are alternatives. IMHO, I would choose HTML though.
Better teach css layout first. Tables are too easy - if they learn tables first, and then switch to css, they will wonder why you are telling them to use a system which requires hacks and tricks to work in different browsers, and to get the same-height columns and flexible widths that you get free with tables.
I would start with non-tables, why teach what's going further out the door?
Also I'd go with the HTML 4/5, XHTML is abandoned at this point...that's not to say it's not used, but the next few years are moving to HTML5, not XHTML.