You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If a counter style is used to represent a counter value outside of its ranges,
777
777
the counter style instead drops down to its fallback counter style.
778
778
779
-
<p>If the value is not ''auto'', the first value of each range in the list represents the lower bound of the range (with ''infinite'' representing negative infinity), and the second value represents the upper bound of the range (with 'infinite' representing positive infinity). This is an inclusive range - it includes both the lower and upper bound numbers. The range of the counter style as a whole is the union of the individual ranges. If the lower bound of any range is higher than the higher bound, the entire descriptor is invalid and must be ignored.
780
-
781
-
<p>If the value is ''auto'', the range depends on the counter system. For ''cyclic'', ''numeric'', and ''fixed'' systems, it must be treated identically to specifying ''infinite infinite''. For ''alphabetic'' and ''symbolic'', it must be treated identically to ''1 infinite''. For ''additive'', it must be treated identically to ''0 infinite''. For ''override'', it must be treated according to the system of the counter style it is overriding.
779
+
<dl>
780
+
<dt>auto
781
+
<dd>
782
+
The range depends on the counter system.
783
+
For ''cyclic'', ''numeric'', and ''fixed'' systems,
784
+
the range is negative infinity to positive infinity.
785
+
For ''alphabetic'' and ''symbolic'' systems,
786
+
the range is 1 to positive infinity.
787
+
For ''additive'' systems,
788
+
the range is 0 to positive infinity.
789
+
For ''override'' systems,
790
+
the range is identical to the overridden system.
791
+
792
+
<dt>[ [ <integer> | infinite ]{2} ]#
793
+
<dd>
794
+
This defines a comma-separated list of ranges.
795
+
For each individual range,
796
+
the first value is the lower bound
797
+
and the second value is the upper bound.
798
+
This range is inclusive - it contains both the lower and upper bound numbers.
799
+
If ''infinity'' is used as the first value in a range,
800
+
it represents negative infinity;
801
+
if used as the second value,
802
+
it represents positive infinity.
803
+
The range of the counter style is the union of all the ranges defined in the list.
782
804
783
-
<p>Some counter style systems have their own implicit ranges, specified above in the individual descriptions for each system. The explicit range given by the ''<codeclass="css">range</code>'' descriptor applies at the same time as the implicit range given by the ''<codeclass="css">system</code>'' descriptor - if the counter value is outside either range, the fallback style must instead be used to generate the representation.
805
+
<p>
806
+
If the lower bound of any range is higher than the upper bound,
807
+
the entire descriptor is invalid and must be ignored.
808
+
</dl>
784
809
785
-
<pclass=issue>There's also an implicit range coming from implementation
786
-
limits. Should we require UAs to support all values in a signed 2-byte int,
787
-
or a signed 4-byte int?
810
+
<p>
811
+
Implementations must support ranges with a lower bound of at least -2<sup>15</sup>
812
+
and an upper bound of at least 2<sup>15</sup>-1
813
+
(the range of a signed 2-byte int).
814
+
They may support higher ranges.
815
+
If a range is specified with a bound greater than the implementation's supported bounds,
816
+
it must be treated as specifying the implementation's maximum supported bound.
788
817
789
818
790
819
<h3id='counter-style-width'>
791
-
Constant-width Representations: the 'width' descriptor</h3>
820
+
Zero-Padding and Constant-Width Representations: the 'width' descriptor</h3>
0 commit comments