As I remarked here:
What I wonder is whether you don't get 90% of what you might need (display independance) by using XHTML and CSS, i.e. you get the appearance control you need via syntactically meaningful HTML and CSS?
That's what HTML and CSS was designed for. You could establish a couple of simple conventions, e.g. three levels of navigational CSS classes and you're done. It would be akin to agreeing on a standard vocabulary.