Description

 

A drop-down menu consists of related content grouped together and organized vertically.

It allows users to select one or multiple values from a list of predefined values. An optional search field can help the user to find values easily.

Example:

Types

Type

Image

Regular drop-down

Searchable drop-down

Multi-select drop-down

Multi-select searchable drop-down

Usage & Behavior

General guidelines

Structure

The drop-down consists of:

Text labels

Icons and text labels

Action icons

Selection indicator

Preceding label

Default State

The drop-down consists of a text box showing a default value, if one exists. For example:

If not:

Content

The options should be ordered using one of these patterns:

Internal Logic

States

State

Visual

Visual- searchable

Visual- multi select

Visual- multi select searchable

Regular

Hover

Active

Selected

Disabled

Error

Warning

Focused, Regular

Focused, Hover

Focused, Active

Focused, Disabled

Interaction

Description

Visual

Regular state

The Select field always displays either

  • the current selection,

  • the hint text “Select”,

  • the hint text “Select a {NameOfEntity}”.

See the Default State section above.

Hover

Click a closed drop-down

  • Clicking or tapping anywhere on the drop-down field should open the options list.

  • Hovered options should be highlighted with a light blue background color.

  • The user may use the ‘Up' and 'Down’ arrows to navigate between items, and click ‘Enter’ to select.

Select an item

On selecting an option:

  • the options list closes.

  • the selected option is displayed in the field.

Click a drop-down with an existing selection

  • Opens the option list.

  • Shows the selected item with a blue check mark on the left side of the option.

Searchable drop-down

A Search field should be added to options lists with over 15 items, and when users are likely to know what they are looking for.

Internal Logic

Interaction

Description

Visual

Click a closed drop-down

  • Clicking or tapping anywhere on the drop-down field opens the options list.

  • The search field is focused and the user may start typing.

Enter search

  • As characters are entered, the list is filtered to show relevant results only.

  • The user may use the ‘Up' and 'Down’ arrows to navigate between items, and click ‘Enter’ to select.

Select an item

On selecting an option:

  • the options list closes.

  • the selected option is displayed in the field.

Click a drop-down with an existing selection

  • Opens the option list.

  • The search field is focused and the user may start typing.

  • Shows the selected item with a blue check mark on the left side of the option.

Multi Select drop-down

A multi selection drop-down allows users to easily select multiple values from a predefined list.

Internal Logic

Selected items

Select All (optional)

Use the “All” option when:

Interaction

Step

Visual

Description

Click a closed drop-down

  • Clicking or tapping anywhere on the drop-down field opens the options list.

Select an item

  • The options list remains open.

  • The option name is added to the select trigger area.

  • The selected item is checked.

Multiple items selected

  • First, all items are presented one after another, separated by a comma.

  • When the selected items exceed the size of the trigger area, the total number of selections should be presented.

Click on the select trigger area or outside the control

  • The list box closes

  • The selected options are displayed in the field

Multi-select Searchable drop-down

Interaction

Step

Visual

Description

Click a closed drop-down

  • Clicking or tapping anywhere on the drop-down field opens the options list.

  • The search field is focused and the user may start typing.

Enter Search

  • As characters are entered, the list is filtered to show relevant results only.

  • The user may use the ‘Up' and 'Down’ arrows to navigate between items, and click ‘Enter’ to select.

Select an item

  • The option name is added to the select trigger area.

  • The options list remains open, so the user can select another item.

  • Search can be cleared to view the full options list.

  • The selected items are checked.

Delete search string

  • A search string can be cleared using the “x” button, or manually by using the delete key.

  • The full list is presented.

  • The search field is in focus.

Validations and errors

Please refer to Field validation page for more information.

An example for a drop-down menu with a warning: 

An example for a drop-down menu with an error: 

Best practices

Design

Zeplin Link

Screen Thumbnail

 https://zpl.io/bWOjejb




New LUX design


<link rel="stylesheet" href="https://ux.verint.com/fonts/css/verint_lux.css">
<link rel="stylesheet" href="https://ux.verint.com/bootstrap-4.0.0/dist/css/bootstrap.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://ux.verint.com/bootstrap-4.0.0/dist/js/bootstrap.bundle.js"></script>
<script src="https://ux.verint.com/bootstrap-4.0.0/dist/other/accessibility.js"></script>
<script src="https://ux.verint.com/bootstrap-4.0.0/dist/other/prism.min.js"></script>
<link rel="stylesheet" href="https://ux.verint.com/bootstrap-4.0.0/dist/other/prism-coy.min.css">

<div class="card">
    <div class="card-header">Menu Button <button id="toggleMarkup" type="button" class="btn btn-sm btn-outline-primary btn btn-fixed-width float-right m-0" onclick="$('pre' ).toggle()">Toggle Markup</button></div>
    <div class="card-body">
				<form>
					<div class="form-group row">
						<label for="inputKey" class="col-lg-2 col-form-label col-form-label-sm">Regular</label>
						<div class="col-lg-4">
							<button class="btn btn-outline-light btn-sm btn-fixed-width dropdown-toggle menu-dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Menu</button>
							<div class="dropdown-menu dropdown-menu-sm">
								<a class="dropdown-item" href="#">First Option</a> <a class="dropdown-item" href="#">Second Option</a> <a class="dropdown-item" href="#">Third Option</a> <a class="dropdown-item" href="#">Fourth Option</a>
								<div class="dropdown-divider"></div>
								<a class="dropdown-item" href="#">Fifth Option</a>
							</div>
						</div>
						<div class="col-lg-6">
							<pre class="language-html"><code><script type="prism-html-markup"><button class="btn btn-outline-light btn-sm btn-fixed-width dropdown-toggle menu-dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Menu</button>
<div class="dropdown-menu dropdown-menu-sm">
	<a class="dropdown-item" href="#">First Option</a>
	<a class="dropdown-item" href="#">Second Option</a>
	<a class="dropdown-item" href="#">Third Option</a>
	<a class="dropdown-item" href="#">Fourth Option</a>
	<div class="dropdown-divider"></div>
	<a class="dropdown-item" href="#">Fifth Option</a>
</div></script></code></pre>
						</div>
					</div>
					<div class="form-group row">
						<label for="inputKey" class="col-lg-2 col-form-label col-form-label-sm">Disabled</label>
						<div class="col-lg-4">
							<button class="btn btn-outline-light btn-sm btn-fixed-width dropdown-toggle menu-dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" disabled>Menu</button>
							<div class="dropdown-menu dropdown-menu-sm">
								<a class="dropdown-item" href="#">First Option</a> <a class="dropdown-item" href="#">Second Option</a> <a class="dropdown-item" href="#">Third Option</a> <a class="dropdown-item" href="#">Fourth Option</a>
								<div class="dropdown-divider"></div>
								<a class="dropdown-item" href="#">Fifth Option</a>
							</div>
						</div>
						<div class="col-lg-6">
							<pre class="language-html"><code><script type="prism-html-markup"><button class="btn btn-outline-light btn-sm btn-fixed-width dropdown-toggle menu-dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" disabled>Menu</button>
<div class="dropdown-menu dropdown-menu-sm">
	<a class="dropdown-item" href="#">First Option</a>
	<a class="dropdown-item" href="#">Second Option</a>
	<a class="dropdown-item" href="#">Third Option</a>
	<a class="dropdown-item" href="#">Fourth Option</a>
	<div class="dropdown-divider"></div>
	<a class="dropdown-item" href="#">Fifth Option</a>
</div></script></code></pre>
						</div>
					</div>
					<div class="form-group row">
						<label for="inputKey" class="col-lg-2 col-form-label col-form-label-sm">Error</label>
						<div class="col-lg-4">
							<button class="btn btn-outline-light btn-sm btn-fixed-width dropdown-toggle menu-dropdown-toggle is-invalid" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Menu</button>
							<div class="dropdown-menu dropdown-menu-sm">
								<a class="dropdown-item" href="#">First Option</a> <a class="dropdown-item" href="#">Second Option</a> <a class="dropdown-item" href="#">Third Option</a> <a class="dropdown-item" href="#">Fourth Option</a>
								<div class="dropdown-divider"></div>
								<a class="dropdown-item" href="#">Fourth Option</a>
							</div>
						</div>
						<div class="col-lg-6">
							<pre class="language-html"><code><script type="prism-html-markup"><button class="btn btn-outline-light btn-sm btn-fixed-width dropdown-toggle menu-dropdown-toggle is-invalid" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Menu</button>
<div class="dropdown-menu dropdown-menu-sm">
	<a class="dropdown-item" href="#">First Option</a>
	<a class="dropdown-item" href="#">Second Option</a>
	<a class="dropdown-item" href="#">Third Option</a>
	<a class="dropdown-item" href="#">Fourth Option</a>
	<div class="dropdown-divider"></div>
	<a class="dropdown-item" href="#">Fifth Option</a>
</div></script></code></pre>
						</div>
					</div>
				</form>
			</div>
		</div>