Web browsers will make an attempt to open and display just about any file you point them to, whether it is in your own computer or in the world wide web. However, the result displayed may be quite unpredictable. That is why we use HTML to try to control the way browsers display files.
There are two main currents of thought when it comes to define HTML: One is from the World Wide Web Consortium (W3C). The other is from browser (Firefox, Chrome, Opera) vendors. The W3C is heavily concerned with setting standards to ensure the interoperability of the Web, and tends towards "well formed HTML". Browser vendors are heavily concerned with satisfying their users, and tend towards "whatever the users want". In practice, HTML in common use is a compromise between both camps, but it is a lot safer to create new documents following the W3C recomendations--currently HTML5.
Historically, HTML was all about presentation. Current HTML5, however, has shifted towards describing the semantic parts of structured documents (headers, paragraphs,etc) and has left presentation details to style sheets--currently written as just one word: "stylesheets". The stylesheet design in use for displaying HTML is "cascading" and the current version is 3 (CSS3 - Cascading Style Sheets version 3)