한 줄 요약
버튼리스트카드를 누르면 누른 바로 그 좌표에서 원이 퍼졌다 사라지는 Material 잉크 리플입니다.
이럴 때 필요해요
탭/클릭에 위치감 있는 피드백을 주고 싶을 때 버튼, 리스트 항목, 큰 타일 등 누를 수 있는 표면.
어떻게 동작하나
pointerdown 좌표에 리플 원을 생성한다.
표면을 덮도록 반지름을 계산해 scale+fade한다.
여러 리플을 동시에 쌓고 animationend에서 제거한다.
표면은 position:relative + overflow:hidden로 감싼다.
놓치기 쉬운 것
빠른 연타로 리플이 쌓일 때 정리를 빠뜨리지 않는다.
리플 지름은 클릭점에서 가장 먼 모서리까지로 계산한다.
prefers-reduced-motion이면 생성을 건너뛴다.
이런 곳에 써요
버튼리스트카드 탭 피드백
모바일 터치 영역