Este é parcialmente um remanescente histórico da guerra dos navegadores
O IE e a netscape estavam competindo para conquistar o mercado e continuavam lançando novos recursos que se tornavam cada vez mais "impressionantes", e eram obrigados a aceitar as páginas projetadas para o outro navegador.
Isso significa que o navegador aceita e ignora as tags desconhecidas silenciosamente, depois que os comitês começaram a se envolver ... bem, você tem um comitê projetando coisas e, como resultado, muitas versões diferentes (com algumas especificações ambíguas) em que o navegador deseja dar suporte à maioria dos eles, e criar um analisador separado para cada versão seria um enorme inchaço. Portanto, é (relativamente) mais fácil usar um único analisador com modos diferentes.
Por outra parte, o netscape e o IE queriam que o html fosse acessível para o homem comum (como era a moda naqueles dias), o que significa tentar fazer o que o usuário queria que fosse feito, em vez do que ele dizia fazer e tropeçar em todas as tags penduradas.
Para piorar o problema é que também existem vários sites "tutoriais" ensinando a coisa errada e pensando que estão certos, porque o que ensinam funciona.
Por fim, isso significa que se você criar um navegador com apenas html estrito, analisando 99% dos sites por aí simplesmente não funcionará.