And secondly, the whole point of development is abstraction. Instead of writing HTML, write wrapper classes that write the HTML for you. That way after a while you won't have to write HTML anymore. You just interact with the classes you've written.
In fact, that was one of the key things XAML had going for it - you didn't have to live with the elements you'd been given because you could simply design more and use those in your markup.
That's why I never understood the whole "isn't this HTML lovely" argument. If you've got lovely HTML, it probably means you're still writing it by hand, rather than getting a machine to spit out HTML that you know is conformant, cross-platform, optimised and free from bugs like XSS.
A case in point - go view source on the Google home-page. It's ugly as sin. But you don't hear many people complaining about it.