Chip
Chips are compact elements that represent an input, attribute, or action.
Usage
Import the component:
import 'mdui/components/chip.js';
Import the TypeScript type:
import type { Chip } from 'mdui/components/chip.js';
Example:
<mdui-chip>Chip</mdui-chip>
Examples
Variant
The variant
attribute determines the chip's appearance. There are four available variants:
assist
: Represents smart or automated actions that can span multiple apps.filter
: Represents filters for a collection.input
: Represents discrete pieces of information entered by a user.suggestion
: Helps narrow a user’s intent by presenting dynamically generated suggestions.
Elevated
Add the elevated
attribute to raise the chip, providing it with a shadow.
Icons
Use the icon
and end-icon
attributes to add Material Icons to the left and right sides of the chip, respectively. Alternatively, use the icon
and end-icon
slots to add elements to the chip's sides.
Link
Use the href
attribute to transform the chip into a link. The download
, target
, and rel
attributes are available for link-related functionality.
Disabled and Loading States
Use the disabled
attribute to disable the chip. The loading
attribute displays the loading state.
Selectable
Add the selectable
attribute to make the chip selectable.
Use the selected-icon
attribute to specify the Material Icons name for the selected state. Alternatively, use the selected-icon
slot to specify the selected state icon element.
The selected
property is true
when the chip is selected. Add the selected
attribute to set the chip as selected by default.
Deletable
Add the deletable
attribute to add a delete icon to the right of the chip. Clicking this icon triggers the delete
event. Use the delete-icon
attribute to specify the Material Icons for the delete icon, or use the delete-icon
slot to specify the element for the delete icon.
API
Properties
Attribute | Property | Reflect | Type | Default |
---|---|---|---|---|
variant | variant | 'assist' | 'filter' | 'input' | 'suggestion' | 'assist' | |
Defines the chip type. Possible values:
| ||||
elevated | elevated | boolean | false | |
Gives the chip a shadow. | ||||
selectable | selectable | boolean | false | |
Makes the chip selectable. | ||||
selected | selected | boolean | false | |
Marks the chip as selected. | ||||
deletable | deletable | boolean | false | |
Makes the chip deletable. When set, a delete icon appears on the right. | ||||
icon | icon | string | - | |
Sets the Material Icons name for the left icon. Alternatively, use | ||||
selected-icon | selectedIcon | string | - | |
Sets the Material Icons name for the left icon when selected. Alternatively, use | ||||
end-icon | endIcon | string | - | |
Sets the Material Icons name for the right icon. Alternatively, use | ||||
delete-icon | deleteIcon | string | - | |
Sets the Material Icons name for the delete icon when deletable. Alternatively, use | ||||
href | href | string | - | |
The URL for the hyperlink. If provided, the component is rendered as an | ||||
download | download | string | - | |
Instructs the browser to download the linked URL. Note: This is only available when | ||||
target | target | '_blank' | '_parent' | '_self' | '_top' | - | |
Defines where to open the linked URL. Possible values:
Note: This is only available when | ||||
rel | rel | 'alternate' | 'author' | 'bookmark' | 'external' | 'help' | 'license' | 'me' | 'next' | 'nofollow' | 'noreferrer' | 'opener' | 'prev' | 'search' | 'tag' | - | |
Specifies the relationship of the linked URL as space-separated link types. Possible values:
Note: This is only available when | ||||
autofocus | autofocus | boolean | false | |
Specifies that the element should be focused when the page loads. | ||||
tabindex | tabIndex | number | - | |
Defines the order in which the element receives focus when navigating with the Tab key. | ||||
disabled | disabled | boolean | false | |
Disables the element. | ||||
loading | loading | boolean | false | |
Indicates that the element is in a loading state. | ||||
name | name | string | '' | |
The button's name, which is submitted with form data. Note: This is only available when | ||||
value | value | string | '' | |
The button's value, which is submitted with form data. Note: This is only available when | ||||
type | type | 'submit' | 'reset' | 'button' | 'button' | |
Defines the button's default behavior. The default is
Note: This is only available when | ||||
form | form | string | - | |
Associates the button with a This attribute allows button elements to be associated with Note: Only available when | ||||
formaction | formAction | string | - | |
Specifies the URL that processes the button's submitted information. Overrides the Note: Only available when | ||||
formenctype | formEnctype | 'application/x-www-form-urlencoded' | 'multipart/form-data' | 'text/plain' | - | |
Specifies the form data encoding method. Possible values:
Overrides the Note: Only available when | ||||
formmethod | formMethod | 'post' | 'get' | - | |
Specifies the HTTP method for form submission. Possible values:
Overrides the Note: Only available when | ||||
formnovalidate | formNoValidate | boolean | false | |
Specifies that the form should not be validated on submission. Overrides the Note: Only available when | ||||
formtarget | formTarget | '_self' | '_blank' | '_parent' | '_top' | - | |
Specifies where to display the form submission response. Possible values:
Overrides the Note: Only available when | ||||
validity | ValidityState | - | ||
A | ||||
validationMessage | string | - | ||
The element's validation message. This is empty if the element meets its constraints. |
Methods
Name | Parameters | Returns |
---|---|---|
click | void | |
Simulates a mouse click on the element. | ||
focus |
| void |
Sets focus on the element. An optional parameter can be an object with a | ||
blur | void | |
Removes focus from the element. | ||
checkValidity | boolean | |
Checks the validity of the form field. If it's invalid, it triggers an | ||
reportValidity | boolean | |
Checks the validity of the form field. If it's invalid, it triggers an | ||
setCustomValidity |
| void |
Sets a custom error message. If the text is non-empty, it indicates that the field is invalid. |
Slots
Name |
---|
(default) |
Text. |
icon |
Left icon. |
end-icon |
Right icon. |
selected-icon |
Left icon when selected. |
delete-icon |
Delete icon when deletable. |
CSS Parts
Name |
---|
button |
Internal |
label |
Text. |
icon |
Left icon. |
end-icon |
Right icon. |
selected-icon |
Left icon when selected. |
delete-icon |
Delete icon on the right. |
loading |
The |
CSS Custom Properties
Name |
---|
--shape-corner |
The size of the component corner. You can use a specific pixel value, but it's recommended to reference design tokens. |