The forgiving nature of the web
HTML and CSS are both extraordinarily relaxed and forgiving. If you forget to close a tag or enter incorrect values in a CSS property, it’s not a significant issue, as the parsers continue while ignoring the error. However, that does not mean you have to take advantage of these traits intentionally.
When you add JavaScript, it becomes a lot harder, as a typo in that code stops execution, resulting in nothing working. But JavaScript is a loosely typed system, so it’s still way more forgiving than the Ada language I was taught at university.
HTML and CSS are both extraordinarily relaxed and forgiving.
This does not mean you have to be sloppy and lazy.
Fault-tolerant systems are a backup with robustness built in and are different from “you should not bother.”
Think of it this way. It’s nice to know that you can walk with your shoelaces untied. It’s great that it works, and occasionally, when you forget to tie your shoes, you benefit from that. Still, it’s a good idea to tie your shoes when you put them on.
Write strict HTML, lint your CSS, and compile your JavaScript to up your game. Don’t rely on fault tolerance to fix your code. You win in the long run.