Skip to content

[css-values-4] <integer> grammar terms and <number>-returning functions #11040

@tabatkins

Description

@tabatkins

Grammars can specify that they take either a <number>, or specifically an <integer>. This behavior is well-defined for literal tokens, but less clear for functions evaluating to these types.

Math functions that resolve to a <number> are defined to be allowed to satisfy an <integer> production; their value is rounded to the nearest integer. Similarly, interpolation between two <integer> terms is defined to round to the nearest integer. But there's not actually anything saying, one way or the other, how to treat other functions that return a <number> but aren't math functions, like sibling-index(). We have never defined a function as returning an <integer>; are these functions simply invalid to be used in z-index and the like?

I propose that we adopt the "round to the nearest integer" behavior for everything that's not a literal <number-token>. (The behavior for <number-token> is probably too entrenched to change.)

Agenda+ as this is a change to a stable spec.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    Friday morning

    Status

    Tuesday Afternoon

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions