
Ask HN: Why don't modern Chrome and Firefox pass the Acid3 test anymore? - wolfgke
A few years ago there was a large hype of browsers being the first to pass the Acid3 test.<p>Now I tested the Acid3 test (http:&#x2F;&#x2F;acid3.acidtests.org&#x2F;; also cf. http:&#x2F;&#x2F;www.acidtests.org&#x2F;) with the most recent browsers available to me:<p>Google Chrome 61.0.3163.91 (64 bit), Firefox 55.0.3 (64 bit) and Microsoft Edge.<p>Ironically (with respect to Microsoft&#x2F;IE haters) only Microsoft Edge still passes the Acid3 test with 100&#x2F;100, while Chrome and Firefox only get 97&#x2F;100 (the second and third box from the left stays gray).<p>But this would not be Hacker News if it were not for some technology discussion: So what is the reason why these two browsers do not pass the Acid3 test anymore?
======
systoll
Two changes lead to three failures in Chrome.

The first change is described in the 'note' at
[https://drafts.csswg.org/selectors-4/#child-
index](https://drafts.csswg.org/selectors-4/#child-index)

Chrome is failing a test because the root node claims to be a 'first-child'.

The root node _is_ the first sibling, but since it doesn't have a parent, the
selectors 3 spec didn't include it.

The selectors 4 draft does away with the requirement that a 'first-child' have
a parent, and chrome's behaviour matches.

The second is discussed here
[https://github.com/whatwg/dom/issues/319](https://github.com/whatwg/dom/issues/319)

Roughly, when interpreting qualified names, Chrome is throwing
InvalidCharacterErrors when the acid test wants it to throw NamespaceErrors,
in situations where you really have both. This leads to two tests failing.

------
danieka
According to www.acidtests.org:

> Acid3, in particular, contains some controversial tests and no longer
> reflects the consensus of the Web standards it purports to test, especially
> when it comes to issues affecting mobile browsers.

~~~
wolfgke
> Acid3, in particular, contains some controversial tests and no longer
> reflects the consensus of the Web standards it purports to test, especially
> when it comes to issues affecting mobile browsers.

Does this imply that the standards have changed on how some features are to be
implemented? Or has the correct behavior simply never been specified precisely
enough? Or does this simply mean that some of the features that Acid3 tests
simply don't make much sense on mobile browsers?

~~~
veeti
Standards have changed. For example, CSS :first-child without a parent is now
legal:

[https://developer.mozilla.org/en-US/docs/Web/CSS/:first-
chil...](https://developer.mozilla.org/en-US/docs/Web/CSS/:first-child)

You can shift click the "A" in Acid3 to see what's failing.

------
lomo2
The game these days driven by Chrome is not about standards, it's about the
number of chump devs they can find to adopt whatever "cool" garbage they come
up with over the weekend hackathon. Then they point at those numbers and say
fuck you to whoever opposes it. Six months down the line they will be
furiously patching it. It's like a bunch of 10 years old drive the process.

~~~
wolfgke
While this might be able to explain the result for Chrome, it does in my
opinion not explain why Firefox fails the Acid3 test, too.

~~~
sogen
Firefox drop in market share means they now must do whatever the winner does,
they are an "also-ran", so they are following these 10 year olds...

