Skip to main content

Your opinion matters! Together with you, we want to continuously improve KoliBri. Share your ideas, wishes, or suggestions—quickly and easily.

InputCheckbox

The input type Checkbox generates a rectangular box that is activated and deactivated again by clicking on it. When activated, there is a colored tick in the box.

Construction​

<KolInputCheckbox _label="Checkbox" />

Events​

For the handling of events or callbacks, see .

EventtriggerValue
focusInput field is focused-
clickInput field is clicked-
inputCheckbox is checked or unchecked (corresponds to native input event)Defined _value if active, otherwise null
changeCheckbox is checked or unchecked (corresponds to native change event)Defined _value if active, otherwise null
blurInput field loses focus-
keydownA key is pressed-

Usage​

Checkboxes are used as a single element or as a list of any number of checkboxes. They allow users to select one or more from a predefined number of options.

Variants​

Using the _variant attribute, the following variants can be selected (see examples above):

  • button: changes the icon depending on the status (example 3+4)
  • switch: turns the checkbox into a horizontal switch, where the right is considered active and the left is considered inactive. (Example 2)

Best practices​

  • Use a single checkbox if you want a simple confirmation from users, e.g. accepting the data protection declaration.
  • Use a group of checkboxes to give users the opportunity to select one or more values.

Accessibility​

Avoid using many checkboxes on one page, as this will quickly make your content confusing and long. In such use cases, consider using a Select box with _multiple.

Make sure to assign a label to each checkbox, as this is read out by screen readers and thus enables the input field to be clearly identified.

Keyboard controls​

buttonFunction
TabFocuses the checkbox or allows you to switch between checkboxes in a list.
EmptyActivates or deactivates the checkbox. The Indeterminate state cannot be established via the keyboard.

Overview​

The Checkbox input type generates a rectangular box that can be activated and deactivated by clicking. When activated, a colored checkmark is shown inside the box.

Properties​

PropertyAttributeDescriptionTypeDefault
_accessKey_access-keyDefines the key combination that can be used to trigger or focus the component's interactive element.string | undefinedundefined
_ariaDetails_aria-detailsReferences an external element by ID that provides accessible details for this input. Uses ElementInternals.ariaDetailsElements to cross the Shadow DOM boundary. Supported by desktop screen readers (NVDA, JAWS with Chrome/Firefox). Not yet supported by mobile screen readers (TalkBack, VoiceOver iOS).string | undefinedundefined
_checked_checkedDefines whether the checkbox is checked or not. Can be read and written.boolean | undefinedfalse
_disabled_disabledMakes the element not focusable and ignore all events.boolean | undefinedfalse
_hideLabel_hide-labelHides the caption by default and displays the caption text with a tooltip when the interactive element is focused or the mouse is over it.boolean | undefinedfalse
_hideMsg_hide-msgHides the error message but leaves it in the DOM for the input's aria-describedby.boolean | undefinedfalse
_hint_hintDefines the hint text.string | undefined''
_icons_iconsDefines the icon classnames.string | undefined | { checked: string; indeterminate?: string | undefined; unchecked?: string | undefined; } | { checked?: string | undefined; indeterminate: string; unchecked?: string | undefined; } | { checked?: string | undefined; indeterminate?: string | undefined; unchecked: string; }undefined
_indeterminate_indeterminatePuts the checkbox in the indeterminate state, does not change the value of _checked.boolean | undefinedundefined
_infoPopover_info-popoverDefines the informational popover after the label.anyundefined
_label (required)_labelDefines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to false to enable the expert slot.stringundefined
_labelAlign_label-alignDefines which alignment should be used for presentation."left" | "right" | undefined'right'
_msg_msgDefines the properties for a message rendered as Alert component.Omit<AlertProps, "_on" | "_label" | "_level" | "_variant" | "_hasCloser"> & { _description: string; } | string | undefinedundefined
_name_nameDefines the technical name of an input field.string | undefinedundefined
_on--Gibt die EventCallback-Funktionen für das Input-Event an.InputTypeOnBlur & InputTypeOnClick & InputTypeOnChange & InputTypeOnFocus & InputTypeOnInput & InputTypeOnKeyDown | undefinedundefined
_required_requiredMakes the input element required.boolean | undefinedfalse
_shortKey_short-keyAdds a visual shortcut hint after the label and instructs the screen reader to read the shortcut aloud.string | undefinedundefined
_tooltipAlign_tooltip-alignDefines where to show the Tooltip preferably: top, right, bottom or left."bottom" | "left" | "right" | "top" | undefined'top'
_touched_touchedShows if the input was touched by a user.boolean | undefinedfalse
_value_valueDefines the value of the element.boolean | null | number | object | string | undefinedtrue
_variant_variantDefines which variant should be used for presentation."button" | "default" | "switch" | undefined'default'

Methods​

click​

click() => Promise<void>

Clicks the primary interactive element inside this component.

Returns​

Type: Promise<void>

focus(options?: KolFocusOptions) => Promise<void>​

Sets focus on the internal element.

Parameters​
NameTypeDescription
optionsKolFocusOptions | undefined
Returns​

Type: Promise<void>

getValue() => Promise<StencilUnknown>​

Returns the current value.

Returns​

Type: Promise<StencilUnknown>

Slots​

SlotDescription
The label of the input field.
"expert"Custom label content, e.g. for rich text or icons. https://public-ui.github.io/docs/concepts/expert-slot

Usage _msg​

Case_msg-Value
No messageundefined
Default error messagestring
Message{_type: 'success', _description: 'Success message'}

Examples​