W3C home > Mailing lists > Public > www-style@w3.org > May 2010

Re: [css3-values] calc() constraints too strong for * and /

From: Tab Atkins Jr. <jackalmage@gmail.com>
Date: Mon, 10 May 2010 19:42:16 -0700
Message-ID: <AANLkTilK89xEtpDftyJpkOWJYh3NdxYlA4q4z5KVZz42@mail.gmail.com>
To: "L. David Baron" <dbaron@dbaron.org>
Cc: www-style@w3.org
On Mon, May 10, 2010 at 6:40 PM, L. David Baron <dbaron@dbaron.org> wrote:
> In the new text in
> http://dev.w3.org/csswg/css3-values/#the-calc-min-and-max-functions
> describing calc(), I think these constraints:
>  > 2. At "*":
>  > check: at least one side is "number"
>  > return: the type of the other side
>  > 3. At "/":
>  > check: either right side is "number," or both have the same type
>  > return: if the former, type of left side; otherwise "number"
> are too strong.  And, additionally, since the new definition of the
> binary operators is nonrecursive, they're also ambiguous.
>
> In particular, I think it's bad that they make:
>  2em * (2em / 3em)
> legal while the mathematically equivalent:
>  (2em * 2em) / 3em
> is illegal and it's unclear whether:
>  2em * 2em / 3em
> is legal or not.  I think these should be handled consistently.

We really just need to stop faking it and track units properly across
the expression.

~TJ
Received on Tuesday, 11 May 2010 02:46:02 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:27 GMT