Dropdown
CSS
Include the SCSS in your application
// Pick ONE of the files below depending on your theme to include
@import '@springernature/elements/components/dropdown';
@import '@springernature/elements/components/dropdown/nature';
Example usage
The core experience will show a label and a list of items underneath. JavaScript and more advanced CSS options are available by using the class .js
on the document root element.
<div class="c-dropdown">
<span class="c-dropdown__label">dropdown</span>
<button class="c-dropdown__button" aria-expanded="false" data-dropdown data-dropdown-target="#dropdown">Dropdown
<svg aria-hidden="true" width="10" height="10" aria-hidden="true" focusable="false">
<use xlink:href="i-chevron-more"></use>
</svg>
</button>
<ul class="c-dropdown__menu" id="#dropdown">
<li><a href="#" class="c-dropdown__link" data-dropdown-item>Option 1</a></li>
<li><a href="#" class="c-dropdown__link" data-dropdown-item>Option 2</a></li>
<li><a href="#" class="c-dropdown__link" data-dropdown-item>Option 3</a></li>
</ul>
</div>
Enhanced dropdown
import {dropdown} from 'dropdown/js';
dropdown();
The component uses the Expander from the themes
package to handle the events.
You can get a quick implementation by adding these two attributes data-dropdown
and data-dropdown-target
in your HTML as shown at the example above.
If you need more flexibility, use the expander component directly following its documentation.