Forum Moderators: open
Tx
Read your question again - 'I want to code... Are you paying yourself? Or are your clients paying you? Your client wants the site in HTML 4.01 transitional, for good reasons, such as supporting width on table cells etc. Why are you wanting to make it xhtml 1 strict? The code is either 4.01 transitional or it isn't. Saying invalid markup is something it isn't is pretty pointless wouldn't you say?
If you want to do your own stuff in xhtml strict, do it. But your clients I think know why they want that, and that's what you should give them. Any client who actually even knew what 4.01 transitional was would make me very happy.
xhtml declared as html 4.01 is error filled code, it won't validate, and it's just plain silly to do it that way. Listen to your clients, do what they want. If in the future you get a new client, which you might if you make these guys happy, and they have no clue about xhtml or html, and you'll be working on the site always, make it xhtml strict.
Backward compatibility isn't a function of what doctype you say it is, it's a function of what html and attributes you use. A backward compatible website cannot be xhtml/css. If in doubt, take a quick look at this website's page code. This is true, almost 100% backward compatible html.