[css3-animations] Errors in "Value:" entries

(Note that many of these issues also appear in Transitions)

1. For 'animation-name':

IDENT isn't in angle brackets. It should probably be something like  
<property-name> instead, where that non-terminal should be defined in the  
prose (Transitions uses <IDENT>, but I think that would need to be defined  
too, and some identifiers should be excluded, such as 'none', and  
'inherit'/'initial' as mentioned in  
<http://lists.w3.org/Archives/Public/www-style/2011Apr/0346.html>).


2. For 'animation-timing-function':

ease | linear | ease-in | ease-out | ease-in-out | step-start | step-end |  
steps(<number>[, start | end ]) | cubic-bezier(<number>, <number>,  
<number>, <number>) [, ease | linear | ease-in | ease-out | ease-in-out |  
step-start | step-end | steps(<number>[, start | end ]) |  
cubic-bezier(<number>, <number>, <number>, <number>)]*

has missing and misplaced square brackets. It should probably just be

<'transition-timing-function'>

since I think those are supposed to be the same (but are already out of  
sync), and then Transitions can get the corresponding "Value:" line fixed  
up. E.g.

<timing-function> [, <timing-function> ]*

where <timing-function> would be defined in the prose as

ease | linear | ease-in | ease-out | ease-in-out | step-start | step-end |  
steps(<integer>, [start | end]) | cubic-bezier(<number>, <number>,  
<number>, <number>)


3. For 'animation-iteration-count':

infinite | <number> [, infinite | <number>]*

is missing square brackets around "infinite | <number>". Probably it  
should just say something like

<iteration-count> [, <iteration-count>]

where <iteration-count> is defined as

infinite | <number>

Similar issues for 'animation-name', 'animation-direction',  
'animation-play-state' and 'animation-fill-mode'.


4. For 'animation':

[<animation-name> || <animation-duration> || <animation-timing-function>  
|| <animation-delay> || <animation-iteration-count> ||  
<animation-direction> || <animation-fill-mode>] [, [<animation-name> ||  
<animation-duration> || <animation-timing-function> || <animation-delay>  
|| <animation-iteration-count> || <animation-direction> ||  
<animation-fill-mode>] ]*

None of these non-terminals are defined. Adding single quotes (e.g.  
<'animation-name'>) wouldn't really work either, since the longhand  
properties are themselves lists of comma-separated values. Probably each  
longhand would need to define the appropriate non-terminals and then  
'animation' be synced up to use them (except for animation-duration and  
animation-delay it might be sufficient to just use <time>).

-- 
Øyvind Stenhaug
Core Norway, Opera Software ASA

Received on Wednesday, 28 September 2011 10:05:38 UTC