> However, CSS and JS are not error-tolerant. A syntax error in a CSS rule causes it to be ignored.
This is good though as it provides a means for progressive enhancement using new features only when they are available and falling back on previous rules if they are not. It's very different from the syntax error -> RIP page nonsense of XHTML.
In the CSS half, in the JS half it's really no different. Of course that's fine because "best effort logic" doesn't provide nearly as much value as "best effort layout".