Skip to content

[css-writing-modes] glyph-orientation-vertical is defined with invalid basic syntax #8032

Open
@cdoublev

Description

@cdoublev

Related: #2921 (comment)

The value of glyph-orientation-vertical is defined with auto | 0deg | 90deg | 0 | 90.

Obviously, the numerical values are not keywords but <angle>s or <integer>s of the corresponding value in degrees. But CSS Values does not define the type to which the numeric values correspond, ie. it does not allow solution 3 below.

I see a few solutions:

  1. define glyph-orientation-vertical with auto | <angle [0,0]> | <angle [90deg,90deg]> | <integer [90,90]>, with numeric values being restricted in prose to degrees or unitless values (<angle> allows unitless value)
  2. extend/change the syntax of the bracketed range notation to [lower-upper] and [x,y,z], or something else
  3. extend the definition of CSS basic data types in CSS Values to allow writing numeric types literally

Solution 1 is a quick fix. Because glyph-orientation-vertical is obsolete, no solution may be worth it. But the CSS Properties and Values API may take advantage of solution 2 or 3, eg.:

@property --boolean {
  syntax: 0 | 1, /* Or <integer [0,1]> */
}

The bracketed range has proven to be problematic with dimensions. So my preference is solution 3 but it makes parsing syntax a bit more complex.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions