2.2.20 [CSS-Level2-2009] Section G.1, Grammar

C0034:

The [CSS-Level2-2009] specification states:

 expr: term [ operator? term ]*;
  
 term: unary_operator?[ NUMBER S* | PERCENTAGE S* | LENGTH S* | EMS S* | EXS S* | 
 ANGLE S* |TIME S* | FREQ S* ]| STRING S* | IDENT S* | URI S* | hexcolor | function;

The [CSS-Level1-2008] specification, Appendix B: CSS1 grammar states:

 expr
  : term [ operator term ]*
  ;
 term
  : unary_operator?
    [ NUMBER | STRING | PERCENTAGE | LENGTH | EMS | EXS
    | IDENT | hexcolor | URL | RGB ]
  ;

Quirks Mode (All Versions)

A space is not required between a number and the next term.

Note In CSS2, a number immediately followed by an identifier is parsed as a DIMENSION token. However, CSS1 parses it as a number and an identifier. This means that in CSS1, the declaration font: 10pt/1.2serif is correct, as is font: 10pt/12pt serif; in CSS2, a space is required before 'serif'.

IE7 Mode, IE8 Mode, and IE9 Mode (All Versions)

A space is required between a number and an identifier.

Show: