TELA

Layout classes

The primary layout primitives in Tela are X and Y.

X

Flexbox row container.

X = centered by default

<ul class="X">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ul>

X + 1rem spacing = centered with 1rem gap

<ul class="X" style="--X-spacing: 1rem;">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ul>

X |X- = start/left justified

<ul class="X |X-" style="--X-spacing: 1rem;">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ul>

X -X| = end/right justified

<ul class="X -X|" style="--X-spacing: 1rem;">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ul>

X |X-X| · min spacing: 1rem

<ul class="X |X-X|" style="--X-spacing: 1rem;">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ul>

X |-X-X-| · min spacing: 1rem

<ul class="X |-X-X-|" style="--X-spacing: 1rem;">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ul>

X · spacing: 1rem, separator between 2nd & 3rd

<ul class="X" style="--X-spacing: 1rem;">
<li>First</li>
<li>Second</li>
<li role="separator"></li>
<li>Third</li>
</ul>

Y

Flexbox column container

Y = vertically stacked

<ul class="Y" style="height: 300px;">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ul>

Y · spacing: 1rem = vertically stacked with 1rem gap

<ul class="Y" style="--Y-spacing: 1rem; height: 300px;">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ul>

Y -Y- · spacing: 1rem = vertically centered

<ul class="Y -Y-" style="--Y-spacing: 1rem; height: 300px;">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ul>

Y -X- · spacing: 1rem = horizontally centered

<ul class="Y -X-" style="--Y-spacing: 1rem; height: 300px;">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ul>

Y -X- -Y- · spacing: 1rem = horizontally & vertically centered

<ul class="Y -X- -Y-" style="--Y-spacing: 1rem; height: 300px;">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ul>