Slashdot Mirror


Firefox and Opera Fail the Acid2 Test

naylor83 writes "Four weeks ago, Opera's CTO Håkan Lie put forward the Acid2 challenge to the IE developers at Microsoft. The Web Standards Project has now silently published the promised browser test. Somewhat surprisingly, both Opera and Firefox fail to correctly render the test page. Obviously though, they're no where near as lousy as Internet Explorer. More screenshots are available at my blog, as well as at other people's."

6 of 281 comments (clear)

  1. Re:So.. by oldosadmin · · Score: 4, Informative
    --
    Jay | http://oldos.org
  2. Re:So nothing can display it correctly? by commonchaos · · Score: 5, Informative

    Not even Firefox supports all of CSS2.

    Google found an article that describes this in more detail

  3. Re:So.. by Anonymous Coward · · Score: 4, Informative

    It's supposed to be invalid. The CSS specification defines error handling, and Internet Explorer gets it wrong. A conforming user-agent would never apply those rules.

    In fact it is necessary for this stylesheet to be invalid - otherwise it wouldn't test the error handling parts of the CSS specifications.

  4. Re:Valid CSS? by naylor83 · · Score: 5, Informative

    They deliberately made errors which the browsers should cope with according to the specs.

  5. Re:Valid CSS? by interiot · · Score: 4, Informative
    Yup, and I quote:
    • CSS parsing -- Acid2 includes a number of illegal CSS statements that should be ignored by a compliant browser.
  6. Re:Who's behind the test? by JimDabell · · Score: 4, Informative

    Firstly, the errors are there on purpose, to check the error handling conformance.

    As for whether the <textarea> is shrink-to-fit or not, the CSS 2.1 specification has this to say.

    If all three of 'left', 'width', and 'right' are 'auto' [This is the case] : First set any 'auto' values for 'margin-left' and 'margin-right' to 0. Then, if 'direction' is 'ltr' [This is the case] set 'left' to the static position and apply rule number three below; otherwise, set 'right' to the static position and apply rule number one below.

    The "rule number three" says that it is shrink-to-fit.

    Your mistake is in referring to 10.3.3, which explains what to do for non-replaced block-level elements in normal flow. You should be referring to 10.3.7, which explains what to do for non-replaced block-level elements that are absolutely positioned.