Components (registry)Layout
Navbar con dropdowns
Layout template: navbar-dropdown
Contrato del layout
Un layout transporta anatomia, no pintura: se rellena por slots y depende del CSS de los componentes que lista. Instalarlo sin ellos lo deja sin estilos.
- Slots
{{logo}}{{link1_url}}{{link1_label}}{{link2_url}}{{link2_label}}{{link3_url}}{{link3_label}}{{link4_url}}{{link4_label}}{{cta_url}}{{cta}}- Componentes requeridos
nav-linkdropdown-menumenu-buttonbuttonburger-iconimage
Anatomía CSS
<div class="layoutNavbarDropdown"> </div>
Tokens resueltos
Valores finales tras seguir la cadena de tokens. Derivados del source: si un token cambia, esta tabla cambia sola.
| Variante | Prop | Valor | Token |
|---|---|---|---|
| all | border | #e5e5e5 | border |
CSS mínimo funcional
Autocontenido: sin imports ni tokens. Para previews y prototipos — en producción se consume el CSS del DS.
/* Layout: navbar-dropdown — structure only */
.l-navbar-dropdown {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: 16px 32px;
border-bottom: 1px solid #e5e5e5;
}
.l-navbar-dropdown__logo {
flex-shrink: 0;
}
.l-navbar-dropdown__menu {
display: flex;
gap: 24px;
align-items: center;
}
.l-navbar-dropdown__cta {
flex-shrink: 0;
}
.l-navbar-dropdown__burger {
display: none;
}
@media (max-width: 768px) {
.l-navbar-dropdown__menu,
.l-navbar-dropdown__cta {
display: none;
}
.l-navbar-dropdown__burger {
/* flex = display propio del atomo burger-icon; con block sus lineas colapsan a 0x0 */
display: flex;
}
}
Codigo fuente
layouts/navbar-dropdown.css
/* Layout: navbar-dropdown — structure only */ .l-navbar-dropdown { display: flex; align-items: center; justify-content: space-between; gap: var(--spacing-4); padding: var(--spacing-4) var(--spacing-8); border-bottom: 1px solid var(--border); } .l-navbar-dropdown__logo { flex-shrink: 0; } .l-navbar-dropdown__menu { display: flex; gap: var(--spacing-6); align-items: center; } .l-navbar-dropdown__cta { flex-shrink: 0; } .l-navbar-dropdown__burger { display: none; } @media (max-width: 768px) { .l-navbar-dropdown__menu, .l-navbar-dropdown__cta { display: none; } .l-navbar-dropdown__burger { /* flex = display propio del atomo burger-icon; con block sus lineas colapsan a 0x0 */ display: flex; } }