Text field helper text
Helper text gives context about a field’s input, such as how the input will be used. It should be visible either persistently or only on focus.
Basic usage
HTML structure
<div class="mdc-text-field-helper-text" aria-hidden="true">helper text</div>
NOTE: Place this inside .mdc-text-field-helper-line
element which is an immediate sibling of .mdc-text-field
.
Styles
@use "@material/textfield/helper-text";
@include helper-text.helper-text-core-styles;
JavaScript instantiation
import {MDCTextFieldHelperText} from '@material/textfield/helper-text';
const helperText = new MDCTextFieldHelperText(document.querySelector('.mdc-text-field-helper-text'));
Accessibility
Note that in every example where the helper text is dependent on the state of the input element, we
assign an id to the mdc-text-field-helper-text
element and set that id to the value of the
aria-controls
and aria-describedby
attributes on the input element. We recommend doing this as well as it will help
indicate to assistive devices that the display of the helper text is dependent on the interaction with
the input element.
<label class="mdc-text-field mdc-text-field--filled">
<span class="mdc-text-field__ripple"></span>
<span class="mdc-floating-label" id="my-label-id">Username</span>
<input class="mdc-text-field__input" type="text"
aria-labelledby="my-label-id"
aria-controls="username-helper-text"
aria-describedby="username-helper-text">
<span class="mdc-line-ripple"></span>
</label>
<div class="mdc-text-field-helper-line">
<div id="username-helper-text" class="mdc-text-field-helper-text" aria-hidden="true">
This will be displayed on your public profile
</div>
</div>
API
CSS classes
CSS Class |
Description |
mdc-text-field-helper-text |
Mandatory. |
mdc-text-field-helper-text--persistent |
Makes the helper text permanently visible. |
mdc-text-field-helper-text--validation-msg |
Indicates the helper text is a validation message. |
Sass mixins
Mixin |
Description |
helper-text-color($color) |
Customizes the color of the helper text following an enabled text-field. |
disabled-helper-text-color($color) |
Customizes the color of the helper text following a disabled text-field. |
helper-text-validation-color($color) |
Customizes the color of the helper text when it's used as a validation message. |
MDCTextFieldHelperText
properties and methods
Property |
Value Type |
Description |
foundation |
MDCTextFieldHelperTextFoundation |
Returns the helper text's foundation. This allows the parent MDCTextField component to access the public methods on the MDCTextFieldHelperTextFoundation class. |
Usage within frameworks
If you are using a JavaScript framework, such as React or Angular, you can create a Helper Text for your framework. Depending on your needs, you can use the Simple Approach: Wrapping MDC Web Vanilla Components, or the Advanced Approach: Using Foundations and Adapters. Please follow the instructions here.
MDCTextFieldHelperTextAdapter
Method Signature |
Description |
addClass(className: string) => void |
Adds a class to the helper text element. |
removeClass(className: string) => void |
Removes a class from the helper text element. |
hasClass(className: string) => boolean |
Returns true if classname exists for the helper text element. |
setAttr(attr: string, value: string) => void |
Sets an attribute with a given value on the helper text element. |
removeAttr(attr: string) => void |
Removes an attribute on the helper text element. |
setContent(attr: string) => void |
Sets the text content for the helper text element. |
MDCTextFieldHelperTextFoundation
Method Signature |
Description |
setContent(content: string) => void |
Sets the content of the helper text. |
setPersistent(isPersistent: boolean) => void |
Sets the helper text as persistent. |
setValidation(isValidation: boolean) => void |
Sets the helper text as a validation message. |
showToScreenReader() => void |
Makes the helper text visible to the screen reader. |
setValidity(inputIsValid: boolean) => void |
Sets the validity of the helper text based on the input validity. |