使用 CSS mask 拆分并组装图像
发布: (2025年12月31日 GMT+8 17:26)
1 min read
原文: Dev.to
Source: Dev.to
演示
看看我做的这个 Pen!
使用 mask 属性将图像拆分为多个碎片,然后在悬停时完整显示。使用不到 10 条 CSS 声明的单元素实现。
img {
width: 280px;
aspect-ratio: 1;
box-sizing: border-box;
--_g: var(--g)/calc(50% - var(--g)) calc(50% - var(--g))
no-repeat conic-gradient(#000 0 0);
mask:
left var(--_i,) top var(--_g),
bottom var(--_i,) left var(--_g),
top var(--_i,) right var(--_g),
right var(--_i,) bottom var(--_g);
transition: .3s linear;
}
img:hover {
--_i: var(--g);
padding: var(--g);
}