Well, that's because writing good markup is, obviously, very important. It's supposed to be clean, work effectively on every browser, and be accesible. It also tries to achieve what HTML is supposed to be used for, and that is to display information. XHTML does that by removing style tags and attributes and leaving the styling up to CSS, which is how it's supposed to be. You should check out http://www.csszengarden.com/ to see how to seperate HTML and CSS efectively. You should look at the original html file to understand what I mean better
http://www.csszengarden.com/zengarden-sample.html