使用 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);
}
Back to Blog

相关文章

阅读更多 »

CSS @property:高级主题化

在为 Web 应用程序进行主题化时,CSS 变量是管理值的最简单、最便捷的方式。虽然它们常用于全局设置,@pro...