Skip to content

Commit a8f5f8c

Browse files
committed
[css-easing-2][editorial] Some markup nits, and add a graph to linear like the others have.
1 parent 9e96e70 commit a8f5f8c

File tree

2 files changed

+189
-27
lines changed

2 files changed

+189
-27
lines changed

css-easing-2/Overview.bs

Lines changed: 66 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,19 @@ The syntax for specifying an [=easing function=] is as follows:
134134
timing-functions-syntax-valid.html
135135
</wpt>
136136

137-
## Linear Easing Functions: ''linear'', ''linear()'' ## {#the-linear-easing-function}
137+
<!-- Big Text: linear
138+
139+
█▌ ████ █ █▌ █████▌ ███▌ ████▌
140+
█▌ ▐▌ █▌ █▌ █▌ ▐█ ▐█ █▌ █▌
141+
█▌ ▐▌ ██▌ █▌ █▌ █▌ █▌ █▌ █▌
142+
█▌ ▐▌ █▌▐█ █▌ ████ █▌ █▌ ████▌
143+
█▌ ▐▌ █▌ ██▌ █▌ █████▌ █▌▐█
144+
█▌ ▐▌ █▌ █▌ █▌ █▌ █▌ █▌ ▐█
145+
█████ ████ █▌ ▐▌ █████▌ █▌ █▌ █▌ █▌
146+
-->
147+
148+
<h3 id=the-linear-easing-function>
149+
Linear Easing Functions: ''linear'', ''linear()''</h3>
138150

139151
A <dfn export>linear easing function</dfn>
140152
is an [=easing function=]
@@ -145,8 +157,16 @@ is a pair of numbers,
145157
associating an [=input progress value=]
146158
to an [=output progress value=].
147159

148-
149-
### Syntax ### {#linear-easing-function-syntax}
160+
<figure>
161+
<img class="easing-graph" src="images/linear-easing-curve.svg" width="535" height="510"
162+
alt="A linear curve used as an easing function.">
163+
<figcaption>
164+
''linear(0, .1 25%, .75 50%, 1)''<br>
165+
The shape of the curve follows the [=control points=].<br>
166+
Input progress values serve as <var>x</var> values of the curve,
167+
whilst the <var>y</var> values are the output progress values.
168+
</figcaption>
169+
</figure>
150170

151171
A [=linear easing function=] has the following syntax:
152172

@@ -215,7 +235,8 @@ A [=linear easing function=] has the following syntax:
215235
</div>
216236

217237

218-
### Serializing ### {#linear-easing-function-serializing}
238+
<h4 id=linear-easing-function-serializing>
239+
Serializing</h4>
219240

220241
<div algorithm>
221242
To <dfn export>serialize a linear() function</dfn>:
@@ -259,7 +280,8 @@ A [=linear easing function=] has the following syntax:
259280
</div>
260281

261282

262-
### Output of a linear easing function ### {#linear-easing-function-output}
283+
<h4 id=linear-easing-function-output>
284+
Output</h4>
263285

264286
<section algorithm="to calculate linear easing output progress">
265287

@@ -304,7 +326,8 @@ It returns an [=output progress value=].
304326
</wpt>
305327
</section>
306328

307-
### Examples ### {#linear-easing-function-examples}
329+
<h4 id=linear-easing-function-examples>
330+
Examples</h4>
308331

309332
<div class=example>
310333
''linear()'' allows the definition of easing functions that interpolate linearly between a set of points.
@@ -317,6 +340,7 @@ It returns an [=output progress value=].
317340
alt="linear(0, 0.25, 1) plotted on a graph">
318341
</figure>
319342
</div>
343+
320344
<div class=example>
321345
By default, values are spread evenly between entries that don't have an explicit "input".
322346
Input values can be provided using a <<percentage>>.
@@ -334,6 +358,7 @@ It returns an [=output progress value=].
334358
The third is at 1,1.">
335359
</figure>
336360
</div>
361+
337362
<div class=example>
338363
If two input values are provided for a single output,
339364
it results in two points with the same output.
@@ -352,6 +377,7 @@ It returns an [=output progress value=].
352377
The forth is at 1,1.">
353378
</figure>
354379
</div>
380+
355381
<div class=example>
356382
If the input is outside the range provided,
357383
the trajectory of the nearest two points is continued.
@@ -369,6 +395,7 @@ It returns an [=output progress value=].
369395
The ends of the graph are extended at the angle of the nearest two lines.">
370396
</figure>
371397
</div>
398+
372399
<div class=example>
373400
A typical use of ''linear()'' is to provide many points to create the illusion of a curve.
374401

@@ -405,28 +432,26 @@ It returns an [=output progress value=].
405432
which may be needed for slower animations.
406433
</div>
407434

408-
<h3 id=the-linear-easing-keyword oldids=linear-timing-function-section>The linear easing keyword: ''linear''</h3>
409-
410-
The <dfn dfn-type=value for="<easing-function>">linear</dfn> keyword
411-
produces an identity [=linear easing function=]
412-
whose [=output progress value=] is equal to the
413-
[=input progress value=] for all inputs.
414435

415-
This gives the same result as ''linear(0, 1)''.
436+
<!-- Big Text: bezier
416437

417-
Note: Although this produces a [=linear easing function=],
418-
uses of the keyword ''linear'' always serialize as-is, to ''linear''.
419-
Whereas the function equivalent ''linear(0, 1)'' will serialize to ''linear(0 0%, 1 100%)''.
420-
These rules are in [Serialization](#serialization).
438+
████▌ █████▌ █████▌ ████ █████▌ ████▌
439+
█▌ █▌ █▌ ▐▌ ▐▌ █▌ █▌ █▌
440+
█▌ █▌ █▌ ▐▌ ▐▌ █▌ █▌ █▌
441+
█████ ████ █▌ ▐▌ ████ ████▌
442+
█▌ █▌ █▌ █ ▐▌ █▌ █▌▐█
443+
█▌ █▌ █▌ █ ▐▌ █▌ █▌ ▐█
444+
████▌ █████▌ █████▌ ████ █████▌ █▌ █▌
445+
-->
421446

422447
<h3 id=cubic-bezier-easing-functions oldids=cubic-bezier-timing-functions>Cubic
423-
B&eacute;zier easing functions:
448+
Bézier easing functions:
424449
''ease'', ''ease-in'', ''ease-out'', ''ease-in-out'', ''cubic-bezier()''</h3>
425450

426-
A <dfn export>cubic B&eacute;zier easing function</dfn> is
451+
A <dfn export>cubic Bézier easing function</dfn> is
427452
a type of [=easing function=] defined by four real numbers
428453
that specify the two control points,
429-
<var>P1</var> and <var>P2</var>, of a cubic B&eacute;zier curve whose
454+
<var>P1</var> and <var>P2</var>, of a cubic Bézier curve whose
430455
end points <var ignore>P0</var> and <var ignore>P3</var>
431456
are fixed at (0, 0) and (1, 1) respectively.
432457
The <var>x</var> coordinates of <var>P1</var> and <var>P2</var>
@@ -436,15 +461,15 @@ are restricted to the range [0, 1].
436461
<img class="easing-graph" src="images/cubic-bezier-easing-curve.svg" width="535" height="510"
437462
alt="A cubic Bezier curve used as an easing function.">
438463
<figcaption>
439-
A cubic B&eacute;zier curve used as an easing function.<br>
464+
A cubic Bézier curve used as an easing function.<br>
440465
The shape of the curve is determined by the location of the control
441466
points <var>P1</var> and <var>P2</var>.<br>
442467
Input progress values serve as <var>x</var> values of the curve,
443468
whilst the <var>y</var> values are the output progress values.
444469
</figcaption>
445470
</figure>
446471

447-
A <a>cubic B&eacute;zier easing function</a> has the following syntax
472+
A <a>cubic Bézier easing function</a> has the following syntax
448473
(using notation from [[!CSS-VALUES-3]]):
449474

450475
<div class="prod"><dfn type>&lt;cubic-bezier-easing-function&gt;</dfn> =
@@ -466,7 +491,7 @@ The meaning of each value is as follows:
466491
: <dfn>ease-in-out</dfn>
467492
:: Equivalent to ''cubic-bezier(0.42, 0, 0.58, 1)''.
468493
: <dt><dfn function lt="cubic-bezier()">cubic-bezier(<<number [0,1]>>, <<number>>, <<number [0,1]>>, <<number>>)</dfn></dt>
469-
:: Specifies a <a>cubic B&eacute;zier easing function</a>.
494+
:: Specifies a <a>cubic Bézier easing function</a>.
470495
The four numbers specify points <var>P1</var> and <var>P2</var> of
471496
the curve as (<var ignore>x1</var>, <var ignore>y1</var>, <var
472497
ignore>x2</var>, <var ignore>y2</var>).
@@ -481,12 +506,14 @@ The keyword values listed above are illustrated below.
481506
<img class="easing-graph" src="images/curve-keywords.svg" width="500"
482507
alt="The easing functions produced by keyword values.">
483508
<figcaption>
484-
The easing functions produced by each of the cubic B&eacute;zier easing
509+
The easing functions produced by each of the cubic Bézier easing
485510
function keyword values.
486511
</figcaption>
487512
</figure>
488513

489-
### Output of a cubic b&eacute;zier easing function ### {#cubic-bezier-algo}
514+
515+
<h4 id=cubic-bezier-algo>
516+
Output</h4>
490517

491518
The mapping from input progress to output progress is performed by
492519
determining the corresponding <var>y</var> value ([=output progress value=]) for
@@ -523,6 +550,18 @@ infinitely using tangent of the curve at the closest endpoint as follows:
523550
cubic-bezier-timing-functions-output.html
524551
</wpt>
525552

553+
554+
<!-- Big Text: steps
555+
556+
███▌ █████▌ █████▌ ████▌ ███▌
557+
█▌ █▌ █▌ █▌ █▌ █▌ █▌ █▌
558+
█▌ █▌ █▌ █▌ █▌ █▌
559+
███▌ █▌ ████ ████▌ ███▌
560+
█▌ █▌ █▌ █▌ █▌
561+
█▌ █▌ █▌ █▌ █▌ █▌ █▌
562+
███▌ █▌ █████▌ █▌ ███▌
563+
-->
564+
526565
<h3 id=step-easing-functions oldids=step-timing-functions>Step easing functions:
527566
''step-start'', ''step-end'', ''steps()''</h3>
528567

@@ -605,8 +644,8 @@ The meaning of each value is as follows:
605644

606645
</dl>
607646

608-
<h4 id=step-easing-algo oldids=step-timing-function-algo>Output of
609-
a step easing function</h4>
647+
<h4 id=step-easing-algo oldids=step-timing-function-algo>
648+
Output</h4>
610649

611650
At the exact point where a step occurs, the result of the function is
612651
conceptually the top of the step. However, an additional <dfn>before flag</dfn>
Lines changed: 123 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)