HTML is a markup language. In the olden days when there were only words on a screen, institutions would share information. Each institution had it's own way of identifying what was a header, what was a paragraph, what was a citation, blockquote, etc. So what they did was simply surround text with tags that identified what it was. <p> meant it was a paragraph, <h1> meant it was a level 1 header, <li> meant it was a list item, and so on.
If you were to remove all the bells and whistles from a website, you should still have a document that can be read and understood logically. HTML identifies what it is. CSS handles how it looks.
Outside of a dog, a book is man's best friend. Inside of a dog it's too dark to read. Groucho Marx