Skip to content

Commit 0d377ff

Browse files
committed
[css-align-3] Add Melanie's illustrations for the various alignment keywords
1 parent c117dd2 commit 0d377ff

23 files changed

+682
-3
lines changed

css-align-3/Overview.bs

Lines changed: 94 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -361,8 +361,97 @@ Positional Alignment: the ''center'', ''start'', ''end'', ''self-start'', ''self
361361
</pre>
362362
</dl>
363363

364-
<p class='issue'>
365-
Add example images.
364+
<aside class=example>
365+
The ''<self-position>/start'' and ''<self-position>/end'' keywords
366+
are <a>flow-relative</a>:
367+
they use the <a>writing mode</a> to determine which side to align to.
368+
369+
<figure>
370+
<img src="images/start-inline-tb.svg"
371+
style="background: white; padding: 8px;"
372+
title="inline-axis 'start' alignment in various writing systems"
373+
alt="Inline-axis 'start' alignment:
374+
Horizontal Latin and Chinese are left-aligned,
375+
while Arabic and Hebrew are right-aligned.">
376+
<img src="images/end-inline-tb.svg"
377+
style="background: white; padding: 8px;"
378+
title="inline-axis 'end' alignment in various writing systems"
379+
alt="Inline-axis 'end' alignment:
380+
Horizontal Latin and Chinese are right-aligned,
381+
while Arabic and Hebrew are left-aligned.">
382+
<figcaption>
383+
''<self-position>/start'' vs ''<self-position>/end'' in the <a>inline axis</a>
384+
(<a href="#flexbox-exception">typically<sup>†</sup></a> 'justify-*')
385+
</figcaption>
386+
</figure>
387+
388+
The ''<self-position>/left'' and ''<self-position>/right'' keywords
389+
are absolute (not <a>flow-relative</a>).
390+
391+
<figure>
392+
<img src="images/left-inline-tb.svg"
393+
style="background: white; padding: 8px;"
394+
title="'left' alignment in various writing systems"
395+
alt="Inline-axis 'left' alignment:
396+
Horizontal text is left-aligned, regardless of writing system.">
397+
<img src="images/right-inline-tb.svg"
398+
style="background: white; padding: 8px;"
399+
title="'right' alignment in various writing systems"
400+
alt="Inline-axis 'right' alignment:
401+
Horizontal text is right-aligned, regardless of writing system.">
402+
<figcaption>
403+
''<self-position>/left'' vs ''<self-position>/right''
404+
</figcaption>
405+
</figure>
406+
407+
The ''<self-position>/start'' and ''<self-position>/end'' keywords
408+
have meaning in both the <a lt="inline axis">inline</a> and <a lt="block axis">block</a> axes:
409+
''<self-position>/start'' always orients to the start of the text
410+
(top left for left-to-right/top-to-bottom languages like English)
411+
while ''<self-position>/end'' always orients to the end of the text.
412+
413+
<figure>
414+
<img src="images/start-block-tb.svg"
415+
style="background: white; padding: 8px; padding-bottom: calc(8px + 23px);"
416+
title="block-axis 'start' alignment in various writing systems"
417+
alt="Block-axis 'start' alignment:
418+
Horizontal text is top-aligned in the vertical axis.">
419+
<img src="images/end-block-tb.svg"
420+
style="background: white; padding: 8px; padding-top: calc(8px + 23px);"
421+
title="block-axis 'end' alignment in various writing systems"
422+
alt="Block-axis 'bottom' alignment:
423+
Horizontal text is bottom-aligned in the vertical axis.">
424+
<figcaption>
425+
''<self-position>/start'' vs ''<self-position>/end'' in the <a>block axis</a>
426+
(<a href="#flexbox-exception">typically<sup>†</sup></a> 'align-*')
427+
</figcaption>
428+
</figure>
429+
430+
The ''<self-position>/start'' and ''<self-position>/end'' keywords
431+
use the <a>writing mode</a> of the <a>alignment container</a>,
432+
to help keep things consistent.
433+
But if alignment using the <a>alignment subject</a>’s <a>writing mode</a> is needed,
434+
the ''<self-position>/self-start'' and ''<self-position>/self-end'' keywords can be used.
435+
436+
<figure>
437+
<img src="images/self-v-context-start-tb.svg"
438+
style="background: white; padding: 8px;"
439+
title="inline-axis 'start' alignment with LTR context"
440+
alt="Inline-axis 'start' alignment in an LTR container:
441+
Alignment uses the context’s start direction, so
442+
the (RTL) Arabic and Hebrew items
443+
are right-aligned alongside the (LTR) Latin and Chinese.">
444+
<img src="images/self-v-context-self-start-tb.svg"
445+
style="background: white; padding: 8px;"
446+
title="inline-axis 'self-start' alignment with LTR context"
447+
alt="Inline-axis 'self-start' alignment in an LTR container:
448+
Horizontal Latin and Chinese items are right-aligned,
449+
while Arabic and Hebrew items are left-aligned.">
450+
<figcaption>
451+
''<self-position>/start'' vs ''<self-position>/self-start'' on the individual items
452+
</figcaption>
453+
</figure>
454+
</aside>
366455

367456
<p class='issue'>
368457
Make it easier to understand the dual-axis nature of "start" and "end" wrt orthogonal flows.
@@ -2003,4 +2092,6 @@ Privacy and Security Considerations</h2>
20032092
Acknowledgments</h2>
20042093

20052094
Special thanks goes to David Baron, Javier Fernandez, Markus Mielke, Alex Mogilevsky,
2006-
and the participants in the CSSWG's March 2008 F2F alignment discussions.
2095+
and the participants in the CSSWG's March 2008 F2F alignment discussions
2096+
for their contributions to the alignment model described herein,
2097+
and to Melanie Richards for her illustrations of the various <a href="#alignment-values">alignment keywords</a>.
Lines changed: 26 additions & 0 deletions
Loading
Lines changed: 24 additions & 0 deletions
Loading
Lines changed: 30 additions & 0 deletions
Loading
Lines changed: 30 additions & 0 deletions
Loading
Lines changed: 29 additions & 0 deletions
Loading
Lines changed: 27 additions & 0 deletions
Loading
Lines changed: 27 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)