Skip to main content
Yoummday Light Light Dark System

Txt

<sl-txt> | SlTxt
Since 2.33.0 stable

Render text elements like headlines, copy and others like a champ.

Headline 1 Headline 2 Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Headline 2 Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Headline 3 Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. This is a paragraph with an overline span inside it, and some helper span text as well. Label size m
<sl-txt h1>Headline 1</sl-txt>
<sl-txt h2>Headline 2</sl-txt>
<sl-txt p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</sl-txt>

<sl-txt h2>Headline 2</sl-txt>
<sl-txt p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</sl-txt>
<sl-txt h3>Headline 3</sl-txt>

<sl-txt p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</sl-txt>

<sl-txt p>
  This is a paragraph with an <sl-txt span overline>overline span</sl-txt> inside it,
  and some <sl-txt span helper>helper span text</sl-txt> as well.
</sl-txt>
<sl-txt label size="m">Label size m</sl-txt>

Examples

Headings

Heading element from <sl-txt h1> to <sl-txt h6> to display titles and section headers with semantic weight and style.

Headline 1 Headline 2 Headline 3 Headline 4 Headline 5 Headline 6
<sl-txt h1>Headline 1</sl-txt>
<sl-txt h2>Headline 2</sl-txt>
<sl-txt h3>Headline 3</sl-txt>
<sl-txt h4>Headline 4</sl-txt>
<sl-txt h5>Headline 5</sl-txt>
<sl-txt h6>Headline 6</sl-txt>

Paragraph

Paragraph <sl-txt p> elements display standard block text with default styling.

Default paragraph text
<sl-txt p>Default paragraph text</sl-txt p>

Overline

Overline <sl-txt p overline> or <sl-txt span overline> are text elements with various styles through attributes:

Overline paragraph text helper span text
<sl-txt p overline>Overline paragraph text</sl-txt>
<sl-txt span overline>helper span text</sl-txt>

Helper

Helper <sl-txt p helper> or <sl-txt span helper>are text elements used for supplementary or descriptive text:

Helper paragraph text helper span text
<sl-txt p helper>Helper paragraph text</sl-txt>
<sl-txt span helper>helper span text</sl-txt>

Display Sizes

Display size attributes on <sl-txt p> or <sl-txt span> (e.g., l, xl, xxl, xxxl, xxxxl) apply different large font sizes for emphasis:

Display large paragraph text Display large span text Display x-large paragraph text Display 2x-large paragraph text Display 3x-large paragraph text Display 4x-large paragraph text
<sl-txt p size="l">Display large paragraph text</sl-txt>
<sl-txt span size="l">Display large span text</sl-txt>
<sl-txt p size="xl">Display x-large paragraph text</sl-txt>
<sl-txt p size="xxl">Display 2x-large paragraph text</sl-txt>
<sl-txt p size="xxxl">Display 3x-large paragraph text</sl-txt>
<sl-txt p size="xxxxl">Display 4x-large paragraph text</sl-txt>

Labels

Labels <sl-txt label> come with size variations from xxs to l to label UI elements with different font sizes:

Label size xxs Label size xs Label size s Label size m Label size l
<sl-txt label size="xxs">Label size xxs</sl-txt>
<sl-txt label size="xs">Label size xs</sl-txt>
<sl-txt label size="s">Label size s</sl-txt>
<sl-txt label size="m">Label size m</sl-txt>
<sl-txt label size="l">Label size l</sl-txt>

Extending the element

If you need to apply specific styles to eg all your labels throughout your project, you may want to consider extending the SlTxt class and create your own label component from it.

Roses are red
Roses are red
<my-label>Roses are red</my-label>
<br>
<my-label>Roses are red</my-label>

<script type="module">
import { SlTxt } from '/dist/shoelace.js';
import { css } from 'https://unpkg.com/@lit/reactive-element@2.1.0/css-tag.js';

export class MyLabel extends SlTxt {
  // optionally override is() method to force element to be label and prevent other attributes from changing type and styles
  is(tagname) {
    return tagname === 'label'
  }
  static styles = [
    SlTxt.styles,
    css`
      .label {
       color: red;
      }
    `
  ];
}

MyLabel.define('my-label');
</script>

Importing

If you’re using the autoloader or the traditional loader, you can ignore this section. Otherwise, feel free to use any of the following snippets to cherry pick this component.

Script Import Bundler React

To import this component from the CDN using a script tag:

<script type="module" src="https://v2-48-10.yoummday-theme.pages.dev/components/txt/txt.js"></script>

To import this component from the CDN using a JavaScript import:

import 'https://v2-48-10.yoummday-theme.pages.dev/components/txt/txt.js';

To import this component using a bundler:

import '@yoummday/ymmd-shoelace/dist/components/txt/txt.js';

To import this component as a React component:

import SlTxt from '@yoummday/ymmd-shoelace/dist/react/txt';

Slots

Name Description
(default) The default slot.

Learn more about using slots.