Back to Material Components Web

Line Ripple

packages/mdc-line-ripple/README.md

14.0.03.5 KB
Original Source
<!--docs: title: "Line Ripple" layout: detail section: components excerpt: "The line ripple is used to highlight user-specified input above it." path: /catalog/input-controls/line-ripple/ -->

Line Ripple

The line ripple is used to highlight user-specified input above it. When a line ripple is active, the line’s color and thickness changes.

Design & API Documentation

<ul class="icon-list"> <li class="icon-list-item icon-list-item--spec"> <a href="https://material.io/go/design-text-fields#text-fields-layout">Material Design guidelines: Text Fields Layout</a> </li> <li class="icon-list-item icon-list-item--spec"> <a href="https://material-components.github.io/material-components-web-catalog/#/component/text-field">Demo with Line Ripple on Text Field</a> </li> </ul>

Installation

npm install @material/line-ripple

Basic Usage

HTML Structure

html
<span class="mdc-line-ripple"></span>

Styles

scss
@use "@material/line-ripple/mdc-line-ripple";

JavaScript Instantiation

js
import {MDCLineRipple} from '@material/line-ripple';

const lineRipple = new MDCLineRipple(document.querySelector('.mdc-line-ripple'));

Style Customization

CSS Classes

CSS ClassDescription
mdc-line-rippleMandatory.
mdc-line-ripple--activeStyles the line ripple as an active line ripple.
mdc-line-ripple--deactivatingStyles the line ripple as a deactivating line ripple.

Sass Mixins

MixinDescription
active-color($color)Customizes the color of the line ripple when active.
inactive-color($color)Customizes the color of the line ripple when inactive.

MDCLineRipple Properties and Methods

Method SignatureDescription
activate() => voidProxies to the foundation's activate() method.
deactivate() => voidProxies to the foundation's deactivate() method.
setRippleCenter(xCoordinate: number) => voidProxies to the foundation's setRippleCenter(xCoordinate: number) method.

Usage Within Frameworks

If you are using a JavaScript framework, such as React or Angular, you can create a Line Ripple 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.

MDCLineRippleAdapter

Method SignatureDescription
addClass(className: string) => voidAdds a class to the root element.
removeClass(className: string) => voidRemoves a class from the root element.
hasClass(className: string) => booleanDetermines whether the root element has the given CSS class name.
setStyle(propertyName: string, value: string) => voidSets the style property with propertyName to value on the root element.
registerEventHandler(eventType: EventType, handler: EventListener) => voidRegisters an event listener on the root element for a given event.
deregisterEventHandler(eventType: EventType, handler: EventListener) => voidDeregisters an event listener on the root element for a given event.

MDCLineRippleFoundation

Method SignatureDescription
activate() => voidActivates the line ripple.
deactivate() => voidDeactivates the line ripple.
setRippleCenter(xCoordinate: number) => voidSets the center of the ripple to the xCoordinate given.
handleTransitionEnd(event: Event) => voidHandles a transitionend event.