Definition and Usage
This property controls the speaking rate. The default rate for a voice depends on the language and dialect and on the personality of the voice. The default rate for a voice should be such that it is experienced as a normal speaking rate for the voice when reading aloud text. Since voices are processor-specific, the default rate will be as well.
Name: | voice-rate |
Value: | [normal | x-slow | slow | medium | fast | x-fast] || <percentage> |
Initial: | normal |
Applies to: | all elements |
Inherited: | yes |
Percentages: | refer to default value |
Media: | speech |
Computed value: | a keyword value, and optionally also a percentage relative to the keyword (if not 100%) |
Syntax
voice-rate: [normal | x-slow | slow | medium | fast | x-fast] || <percentage> ;
Values
- normal
Represents the default rate produced by the speech synthesizer for the currently active voice. This is processor-specific and depends on the language, dialect and on the "personality" of the voice.
- x-slow, slow, medium, fast and x-fast
A sequence of monotonically non-decreasing speaking rates that are implementation and voice -specific. For example, typical values for the English language are (in words per minute) x-slow = 80, slow = 120, medium = between 180 and 200, fast = 500.
- <percentage>
Only non-negative percentage values are allowed. This represents a change relative to the given keyword value (see enumeration above), or to the default value for the root element, or otherwise to the inherited speaking rate (which may itself be a combination of a keyword value and of a percentage, in which case percentages are combined multiplicatively). For example, 50% means that the speaking rate gets multiplied by 0.5 (half the value). Percentages above 100% result in faster speaking rates (relative to the base keyword), whereas percentages below 100% result in slower speaking rates.
Examples
<body> <e1> <e2> <e3> ... </e3> </e2> </e1> </body>
body { voice-rate: inherit; } /* the initial value is 'normal' (the actual speaking rate value depends on the active voice) */ e1 { voice-rate: +50%; } /* the computed value is ['normal' and 50%], which will resolve to the rate corresponding to 'normal' multiplied by 0.5 (half the speaking rate) */ e2 { voice-rate: fast 120%; } /* the computed value is ['fast' and 120%], which will resolve to the rate corresponding to 'fast' multiplied by 1.2 */ e3 { voice-rate: normal; /* "resets" the speaking rate to the intrinsic voice value, the computed value is 'normal' (see comment below for actual value) */ voice-family: "another-voice"; } /* because the voice is different, the calculated speaking rate may vary compared to "body" (even though the computed 'voice-rate' value is the same) */