Что важно понять
Спецификация описывает, как должно быть; браузер — то, что реально получилось в движке (с багами, префиксами и догоняющим support).
На практике
- В спеке есть элементы/алгоритмы парсинга; в браузере — процент поддержки и нюансы.
- Ошибки разметки спецификация описывает (recovery); движки могут чуть отличаться в edge cases.
- Фичи появляются постепенно (Interop, caniuse); «есть в HTML Standard» ≠ «можно в IE11».
- Иногда браузеры держат legacy-поведение ради совместимости.
Итог
Пишите по стандарту, проверяйте в целевых движках. Спека — договор; реализация — продукт с версиями.