Comment by lenkite

6 months ago

It should have been possible to declare and use simple web-components - which use a template and a CSS class - without any Javascript.

You can with DSD.

  • You can’t. At minimum you need to call customElements.define().

    • You absolutely can. It's the primary purpose of the DSD (Declarative Shadow DOM), one of the many new specifications people complain incessantly about.

        <my-component>
          <template shadowrootmode="open">
            <style>
              ::slotted(*) {
                font-weight: bold;
                font-family: sans-serif;
              }
            </style>
            <slot></slot>
          </template>
          <p>content</p>
        </my-component>