More recently, there's a push towards better browsers, away from the old Netscape versus Internet Explorer wars (both being as bad as each other). Now, we have browsers like Galeon, Mozilla, Netscape (recent versions), and Opera, which have a stronger focus on adhering to the specifications. Although, they do make concessions to supporting broken websites, by accepting broken HTML, and trying to render it as the author had hoped (which does mean that the browser has to be programmed to do the same task in several different ways, and means that the browser becomes bigger and more complex, and that web authors try to exploit these quirks, rather than write pages properly). Internet Explorer has made a token effort towards being more standards compliant, but the numerous serious security flaws, and the continual abuse of specifications, means that it's not a decent webbrowser.
For anyone who thinks that Microsoft's Internet Explorer is a decent browser, they're sadly mistaken. Not only is it very poor at adhering to the CSS, HTML, and HTTP specifications, it flagrantly violates them (1). It's also very poor at supporting some of the better features of them. But, probably it's biggest claim to fame is its numerous security flaws, where just viewing a malicious website is enough to allow it to violate your computer (2). Microsoft's Outlook Express also suffers in the same way, as it uses the same HTML rendering engine, to display HTML e-mails, which can similarly violate you.
One of the prime purposes of HTML was to come up with a documentation language that was independent of the system being used to read it, and presented the document in the manner most suitable to the person reading it. To this aim, decent browsers allow the user to override default browser behaviours, or document-customised styles. Although moron webpage authors manage to disrupt that aim, by authoring pages in stupid ways.
By way of example, of proper authoring, this site should work well on most webbrowsers, but will look even better on decent browsers. It hasn't relied on any special tricks to do its job, though has taken advantage of some of the features available in more featured browsers (e.g. CSS). Simpler browsers get to see a simpler rendering, which might suit them better, anyway.
Such things as; not obeying server MIME types, and second guessing what's being sent to it. This is a prime cause of the proliferation of broken websites: The author sees that some page (apparently) works in Internet Explorer, doesn't check for errors, and their (broken) page doesn't work in browsers which adhere to the specifications. And, Microsoft's deliberate subversion of standards so that authors will author pages to suit their broken standards, forcing people to use their (Microsoft's) broken browser to see them.
Such as; where some malicious HTML includes something which purports to be something else, e.g. a program instead of an image, and the browser stupidly runs the program, rather than fail to display the (non) image. This is related to the first issue, where the browser second guesses the content, and does whatever it can with it. Or, allows a site to install something without your knowledge. Or, can submit information from your system to a site without your knowledge. And so on.