Por defecto #
Si abres uno, se cierran el resto. Una vez que abres un item, se mantiene al menos un item abierto. Asume que allowmultiple: false y allowToggle: false aunque no se defina expresamente.
Ejemplo: "Por defecto", de código HTML, para maquetar el componente: "Accordion", versión: 14.0.0, del sistema de diseño DESY
Para compilar el css del siguiente código deberás instalar Tailwind CSS y usar el archivo tailwind.config.js del proyecto: https://bitbucket.org/sdaragon/desy-html/
Para que funcione el comportamiento del siguiente código deberás importar el archivo index.js y todos los archivos javascript de la carpeta /src/js y /src/js/aria del proyecto: https://bitbucket.org/sdaragon/desy-html/
Usar sólo el código que está dentro de la siguiente etiqueta <code>.
<!-- accordion -->
<div class="c-accordion">
  <div class="flex justify-between">
  </div>
  <div>
    <div class="-my-px px-xs py-sm border-t border-b border-neutral-base">
      <h4>
        <button
          id="accordion-example-1-title"
          type="button"
          class="c-accordion__trigger group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black"
          aria-controls="accordion-example-1"
          aria-expanded="false">
          <span class="block pr-2xl pointer-events-none">Item de acordeón 1</span>
          <span class="absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black pointer-events-none" aria-hidden="true">
            <span class="c-accordion__show">
              Mostrar
            </span>
            <span class="c-accordion__hide hidden">
              Ocultar
            </span>
          </span>
        </button>
      </h4>
      <p class="sr-only" aria-hidden="true">Haz click en el botón anterior para mostrar u ocultar</p>
      <div
        hidden=""
        id="accordion-example-1"
        class="c-accordion__panel">
        <div class="w-48 p-2">
          <div class="border-4 border-dashed border-neutral-light rounded-lg h-40"></div>
        </div>
      </div>
    </div>
    <div class="-my-px px-xs py-sm border-t border-b border-neutral-base">
      <h4>
        <button
          id="accordion-example-2-title"
          type="button"
          class="c-accordion__trigger group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black"
          aria-controls="accordion-example-2"
          aria-expanded="false">
          <span class="block pr-2xl pointer-events-none">Item de acordeón 2</span>
          <span class="absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black pointer-events-none" aria-hidden="true">
            <span class="c-accordion__show">
              Mostrar
            </span>
            <span class="c-accordion__hide hidden">
              Ocultar
            </span>
          </span>
        </button>
      </h4>
      <p class="sr-only" aria-hidden="true">Haz click en el botón anterior para mostrar u ocultar</p>
      <div
        hidden=""
        id="accordion-example-2"
        class="c-accordion__panel">
        <div class="w-48 p-2">
          <div class="border-4 border-dashed border-neutral-light rounded-lg h-40"></div>
        </div>
      </div>
    </div>
    <div class="-my-px px-xs py-sm border-t border-b border-neutral-base">
      <h4>
        <button
          id="accordion-example-3-title"
          type="button"
          class="c-accordion__trigger group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black"
          aria-controls="accordion-example-3"
          aria-expanded="false">
          <span class="block pr-2xl pointer-events-none">Item de acordeón 3</span>
          <span class="absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black pointer-events-none" aria-hidden="true">
            <span class="c-accordion__show">
              Mostrar
            </span>
            <span class="c-accordion__hide hidden">
              Ocultar
            </span>
          </span>
        </button>
      </h4>
      <p class="sr-only" aria-hidden="true">Haz click en el botón anterior para mostrar u ocultar</p>
      <div
        hidden=""
        id="accordion-example-3"
        class="c-accordion__panel">
        <div class="w-48 p-2">
          <div class="border-4 border-dashed border-neutral-light rounded-lg h-40"></div>
        </div>
      </div>
    </div>
  </div>
</div>
<!-- /accordion -->
          Ejemplo: "Por defecto", de código Nunjucks, para maquetar el componente: "Accordion", versión: 14.0.0, del sistema de diseño DESY
Pegar en la página: pagina-prueba-EDITA-PARA-EMPEZAR.html del proyecto: https://bitbucket.org/sdaragon/desy-html-starter/
Usar sólo el código que está dentro de la siguiente etiqueta <code>.
{% from "components/accordion/_macro.accordion.njk" import componentAccordion %}
{{ componentAccordion({
  "idPrefix": "accordion-example",
  "headingLevel": 3,
  "items": [
    {
      "headerHtml": "<span class='block pr-2xl pointer-events-none'>Item de acordeón 1</span>",
      "html": "<div class='w-48 p-2'><div class='border-4 border-dashed border-neutral-light rounded-lg h-40'></div></div>"
    },
    {
      "headerHtml": "<span class='block pr-2xl pointer-events-none'>Item de acordeón 2</span>",
      "html": "<div class='w-48 p-2'><div class='border-4 border-dashed border-neutral-light rounded-lg h-40'></div></div>"
    },
    {
      "headerHtml": "<span class='block pr-2xl pointer-events-none'>Item de acordeón 3</span>",
      "html": "<div class='w-48 p-2'><div class='border-4 border-dashed border-neutral-light rounded-lg h-40'></div></div>"
    }
  ]
}) }}Mostrar códigodel ejemplo: Por defecto
Contenido
Nunjucks macro
{% from "components/accordion/_macro.accordion.njk" import componentAccordion %}
{{ componentAccordion({
  "idPrefix": "accordion-example",
  "headingLevel": 3,
  "items": [
    {
      "headerHtml": "<span class='block pr-2xl pointer-events-none'>Item de acordeón 1</span>",
      "html": "<div class='w-48 p-2'><div class='border-4 border-dashed border-neutral-light rounded-lg h-40'></div></div>"
    },
    {
      "headerHtml": "<span class='block pr-2xl pointer-events-none'>Item de acordeón 2</span>",
      "html": "<div class='w-48 p-2'><div class='border-4 border-dashed border-neutral-light rounded-lg h-40'></div></div>"
    },
    {
      "headerHtml": "<span class='block pr-2xl pointer-events-none'>Item de acordeón 3</span>",
      "html": "<div class='w-48 p-2'><div class='border-4 border-dashed border-neutral-light rounded-lg h-40'></div></div>"
    }
  ]
}) }}