Dropdown boxes and menus are overused and clunky but can be useful for revealing a list of options or commands.
- Avoid interacting menus, where the options in one menu change when users select something in another menu on the same page
- Gray out any unavailable options
- Very long dropdowns that require scrolling make it impossible for users to see all their choices in one glance
- Avoid dropdown boxes when typing may be faster
- Avoid dropdown boxes for data that is highly familiar to your users
- Keep the menu label or description in view when the dropdown is open
- Keep global navigation options out of dropdown menus on desktop
- Support keyboard input to navigate within a dropdown
Source: Dropdowns: Design Guidelines