평소엔 `transform: translateY(100%)`로 오버레이를 요소 아래로 숨겨두고, hover 시(또는 커서가 카드 영역 안에 있을 때) `translateY(0)`으로 슬라이드시킨다. `opacity`만 쓰는 것보다 위치까지 함께 움직이면 "미끄러져 나온다"는 방향성이 생긴다.
카드 전체가 아니라 특정 자식 요소(버튼 등)에만 hover가 걸리지 않도록, 이벤트는 최상위 카드에 하나만 두고 내부에서 상태를 전파하는 편이 관리하기 쉽다. transition을 0.2~0.3초로 주면 급하지 않게 느껴진다.
터치 기기에는 hover가 없으므로, 탭으로 토글하거나 처음부터 일부 정보를 노출해두는 대체 경로가 필요하다.
언제 쓰나
이미지 카드 위의 캡션·액션 버튼, 테이블 행의 편집 아이콘처럼 "평소엔 안 보여도 되는" 보조 정보에 씁니다.