Isn't it better to fix the broken css file?
Ths CSS standard is very clear about cases like this. Anything that is not recognized as a valid rule must be ignored. Failure to do that is a gross violation of the standard and is bad for forward compatibility with future revisions. In other words, there is no "bad css", only "css this browser does not understand but that may mean something to future browsers". IE6 and NS4 are blatanly wrong here.
Assignee: harishd → doron
Status: UNCONFIRMED → NEW
Component: Parser → US General
Ever confirmed: true
OS: Windows 98 → All
Product: Browser → Tech Evangelism
QA Contact: moied → zach
Hardware: PC → All
Version: other → unspecified
I understand your point, and if we go with your diagnosis, and I have already emailed ESPN.com to ask them to fix their style sheets. However, I read the CSS2 specification section on when to ignore rules because of parsing errors, and I did not find this case. It didn't say "Anything that is not recognized as a valid rule must be ignored." It said "In some cases, user agents must ignore part of an illegal style sheet." It lists the following cases: "Unknown properties", "Illegal Values", and "Invalid at-keywords". Boris, do you know of another document in which you would find the rule that anything not recognized as a valid rule must be ignored"? If I had known about such a rule, I would not have filed this bug, but my only source was the following: http://www.w3.org/TR/REC-CSS2/syndata.html#parsing-errors
This actually falls under "invalid properties", I think. But I also can't locate the part that talks about invalid selectors, so I know I'm missing something... Temporarily setting QA to Ian to get that information.
QA Contact: zach → ian
Oh, I think I know what the issue is. When the missing right curly brace never appears, as far as the parser is concerned, all subsequent rules belong inside whatever scope was never closed (nested rules, I guess). I just didn't realize that nested rules exist until I looked closer at an example in the spec. I guess the reason Mozilla apparently didn't apply the rules wasn't was not so much that the rules were invalid as it was that they no longer applied as intended because they were accidentally nested in the scope of the rule the author forgot to close, right?
Basically, yes. They were parsed as property:value pairs and that failed....
removing myself from qa as you resolved the problem :-)
QA Contact: ian → zach
Summary: no recovery on CSS parse error for missing curly brace, subsequent rules not applied → go.com - no recovery on CSS parse error for missing curly brace, subsequent rules not applied
Mine! Mine! All Your Base Belongs to Me!
Assignee: doron → bclary
Summary: go.com - no recovery on CSS parse error for missing curly brace, subsequent rules not applied → espn.go.com - no recovery on CSS parse error for missing curly brace, subsequent rules not applied
we no longer get the nn stylesheet (instead get an IE one) the page appears redesigned and looks fixed to me.
Status: NEW → RESOLVED
Last Resolved: 15 years ago
Resolution: --- → FIXED
Product: Tech Evangelism → Tech Evangelism Graveyard
You need to log in before you can comment on or make changes to this bug.