So, as of yesterday, I've been unable to connect to any of four different servers, which work fine for others. Of the 4, three give me the following error:
What's up with this? Why is it showing HTML?
The technical reason it's showing html? The client probably expects an error message in plaintext that explains why the login failed. The client is receiving an actual html document and doesn't do any checking before it loads all that text into the spot where the error message should be.
This could be any number of issues where your client is getting back html from something between you and the minecraft server (such as a network security layer or wifi login page, like Amazed suggested) or the minecraft server itself producing 404, 500 or any number of other error pages for any number of reasons.
Considering that it's happening on 3 of 4 servers, maybe they haven't upgraded to 1.5 yet?
There are reports that Trend Micro security products (and some other web-filtering soft/hardware) sometimes block Minecraft connections and try to display a "Warning" HTML page. Check your security software and make sure it allows Minecraft to connect.