게시글의 제목 등이 너무 길 때, text-overflow를 통해 디자인을 해치지 않도록 합니다.
이 때 clip이나 ellipsis 대신 페이드 아웃 처리를 하고 싶을 때가 있습니다.
CSS를 통해 이를 구현해봅니다.

1. mask-image

See the Pen text-overflow (1) by _______eungook (@_______eungook) on CodePen.

mask-imagelinear-gradient()로 씌워주는 것으로 간단히 구현할 수 있습니다.

2. <a> 태그인 경우

text-overflow를 위해서는 display: block이 필요합니다.
이 경우 <a> 태그는 text가 아닌 block 영역 전체가 클릭 가능한 영역이 되어 사용성에 문제가 생깁니다.

그래서 이를 위해 width: fit-content를 넣어주게 되는데, 부영향으로 mask-image의 width도 같이 짧아지게 됩니다.
그 결과 text-overflow와 무관한 페이드 아웃이 적용됩니다.

이 부분은 다시 mask-size를 max-width와 동일하게 적용하여 해결할 수 있습니다.

See the Pen text-overflow (2) by _______eungook (@_______eungook) on CodePen.

3. tailwind의 @utility로

위 내용을 tailwind의 @utility로 등록하면 다음과 같습니다.

/* 제목이 너무 긴 경우 페이드 아웃 효과 */

@utility post-truncate-* {
    @apply inline-block truncate text-clip;
    
    mask-image: linear-gradient(to right, black 90%, transparent);
    
    max-width: --value(--container-*);
    max-width: --value([number]);
    max-width: calc(--value(number) * 1rem);
    
    mask-size: --value(--container-*);
    mask-size: --value([number]);
    mask-size: calc(--value(number) * 1rem);
}

post-truncate-16, post-truncate-xl 같은 느낌으로 사용할 수 있습니다.