Se compone de un listado de elementos anidados que poseerán los enlaces a cada una de las secciones del sitio web en concreto. El número de páginas que puede contener es mayor que en el menú horizontal, ya que no está limitado en espacio. Podría compararse a un índice.
Añade active: true a un item para mostrarlo activo inicialmente. También puedes usar con javascript la función global activateItemMenuVertical(elementMenu, idItemSeleccionado) para seleccionar un item de un menú, usando sus ids. Ej: Abre la consola del navegador y escribe activateItemMenuVertical('mi-menu', 'active-item-3') para desactivar el item actual y activar el tercer item de este ejemplo.
Mostrar códigodel ejemplo: Con un texto de item muy largo
Contenido
Nunjucks macro
{%from"components/menu-vertical/_macro.menu-vertical.njk" import componentMenuVertical %}{{ componentMenuVertical({
"idPrefix": "long-text",
"items": [
{
"href": "#",
"text": "No debe haber enlaces de más de 250 caracteres, que es el máximo admitido en accesibilidad, con excepción de nombres de leyes. Nullam id dolor id nibh ultricies vehicula ut id elit. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Maecenas faucibus mollis interdum. Donec id elit non mi porta gravida at eget metus."
},
{
"href": "#",
"text": "No debe haber enlaces de más de 250 caracteres, que es el máximo admitido en accesibilidad, con excepción de nombres de leyes. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Donec sed odio dui. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras mattis consectetur purus sit amet fermentum."
},
{
"href": "#",
"text": "No debe haber enlaces de más de 250 caracteres, que es el máximo admitido en accesibilidad, con excepción de nombres de leyes. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Etiam porta sem malesuada magna mollis euismod. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. Sed posuere consectetur est at lobortis."
}
],
"attributes": {
"aria-label": "Menu vertical"
}
}) }}
HTML
<!-- menu-vertical --><navdata-module="c-menu-vertical"aria-label="Menu vertical"><ulclass="text-base"><liclass="my-base break-inside-avoid-column"><aid="long-text-1"href="#"class="block px-xs focus:bg-warning-base focus:outline-hidden focus:shadow-outline-focus focus:text-black hover:text-primary-base hover:underline">
No debe haber enlaces de más de 250 caracteres, que es el máximo admitido en accesibilidad, con excepción de nombres de leyes. Nullam id dolor id nibh ultricies vehicula ut id elit. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Maecenas faucibus mollis interdum. Donec id elit non mi porta gravida at eget metus.
</a></li><liclass="my-base break-inside-avoid-column"><aid="long-text-2"href="#"class="block px-xs focus:bg-warning-base focus:outline-hidden focus:shadow-outline-focus focus:text-black hover:text-primary-base hover:underline">
No debe haber enlaces de más de 250 caracteres, que es el máximo admitido en accesibilidad, con excepción de nombres de leyes. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Donec sed odio dui. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras mattis consectetur purus sit amet fermentum.
</a></li><liclass="my-base break-inside-avoid-column"><aid="long-text-3"href="#"class="block px-xs focus:bg-warning-base focus:outline-hidden focus:shadow-outline-focus focus:text-black hover:text-primary-base hover:underline">
No debe haber enlaces de más de 250 caracteres, que es el máximo admitido en accesibilidad, con excepción de nombres de leyes. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Etiam porta sem malesuada magna mollis euismod. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. Sed posuere consectetur est at lobortis.
</a></li></ul></nav><!-- /menu-vertical -->
Este es un párrafo explicativo metido con un sub.html dentro del Item
Mostrar códigodel ejemplo: Items con contenido descriptivo
Contenido
Nunjucks macro
{%from"components/menu-vertical/_macro.menu-vertical.njk" import componentMenuVertical %}{{ componentMenuVertical({
"idPrefix": "descriptive-example",
"items": [
{
"href": "#",
"text": "Item 1",
"sub": {
"html": "<p>Este es un párrafo explicativo metido con un sub.html dentro del Item</p>"
}
},
{
"href": "#",
"text": "Item 2",
"sub": {
"html": "<p>Este es un párrafo explicativo metido con un sub.html dentro del Item</p>"
}
},
{
"href": "#",
"text": "Item 3",
"sub": {
"html": "<p>Este es un párrafo explicativo metido con un sub.html dentro del Item</p>"
}
}
],
"attributes": {
"aria-label": "Menu vertical"
}
}) }}
HTML
<!-- menu-vertical --><navdata-module="c-menu-vertical"aria-label="Menu vertical"><ulclass="text-base"><liclass="my-base break-inside-avoid-column"><aid="descriptive-example-1"href="#"class="block px-xs focus:bg-warning-base focus:outline-hidden focus:shadow-outline-focus focus:text-black hover:text-primary-base hover:underline">
Item 1
</a><divclass="mb-base px-xs origin-top-left text-sm text-neutral-dark"id="sub-descriptive-example-1"><p>Este es un párrafo explicativo metido con un sub.html dentro del Item</p></div></li><liclass="my-base break-inside-avoid-column"><aid="descriptive-example-2"href="#"class="block px-xs focus:bg-warning-base focus:outline-hidden focus:shadow-outline-focus focus:text-black hover:text-primary-base hover:underline">
Item 2
</a><divclass="mb-base px-xs origin-top-left text-sm text-neutral-dark"id="sub-descriptive-example-2"><p>Este es un párrafo explicativo metido con un sub.html dentro del Item</p></div></li><liclass="my-base break-inside-avoid-column"><aid="descriptive-example-3"href="#"class="block px-xs focus:bg-warning-base focus:outline-hidden focus:shadow-outline-focus focus:text-black hover:text-primary-base hover:underline">
Item 3
</a><divclass="mb-base px-xs origin-top-left text-sm text-neutral-dark"id="sub-descriptive-example-3"><p>Este es un párrafo explicativo metido con un sub.html dentro del Item</p></div></li></ul></nav><!-- /menu-vertical -->