Многие считают, что HTML - это то, что определяет внешний вид сайта, расположение, цвета элементов и так далее.
На самом деле, это не так.
В HTML можно задать и расположение элементов и цвета, и размеры. Но основное его назначение - задать структуру документа, то есть, разделить страницу на логические части - где заголовок, где подзаголовок, где абзацы, где ссылки на другие документы, где списки каких-то пунктов, какие элементы особо важны.
И при этом в стандарте нет практически ни слова о том, как это будет выглядеть на экране.
Почему же элементы страницы выглядят у всех примерно одинаково, когда задаётся "чистый" HTML без указания цветов, размеров и так далее?
Потому что в программах просмотра HTML-страниц (Internet Explorer, Мозилла, Опера и другие) указаны значения по умолчанию для вывода различных элементов страницы на экран. И они во всех программах примерно одинаковые.
Когда вас не устраивает внешний вид по умолчанию, вы указываете явно, как бы вы хотели, чтобы выглядел тот или иной HTML-элемент.
В старых стандартах HTML можно было прописывать внешний вид прямо там же, где и HTML, но это делало HTML-код очень неуклюжим.
Если мы говорим о современных стандартах HTML, то внешний вид элементов задаётся отдельно при помощи специального языка - CSS (Cascading Style Sheets - каскадные таблицы стилей) - тоже довольно простого, описывающего внешний вид HTML-элементов.
Если рассмотреть на примере, то HTML говорит, что "
Граф Монте-Кристо" - ссылка на книгу, - а CSS здесь же говорит, что эта ссылка красного цвета, написана крупным шрифтом и подчёркнута.