关于 corner-diagonals
用于为按钮、卡片、面板和容器外壳添加细微斜切边角的设计技能。提供可复用的几何与边框样式,同时兼顾文字、点击区域和焦点状态的可用性。
主要功能
- 01基于多边形的斜切形状
- 02可复用的切角尺寸变量
- 03带边框的外壳样式
- 04按钮、卡片和面板设计方案
- 05可读性与焦点状态检查
适用场景
- 01为按钮设计统一的工程感轮廓
- 02构建带斜切角的框架卡片
- 03在多个面板中使用重复几何元素
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mengto/ skills --skill corner-diagonals安装后在 Claude Code 中输入/corner-diagonals确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
demo/index.htmlPROMPT.mdsource.json详细介绍
转角斜切
适用范围
- 仅用于按钮、卡片、面板和容器外壳。
- 当界面需要斜切转角或倒角边缘时使用。
- 即使视觉形状经过裁切,也要确保点击区域清晰易用。
- 在不同表面复用相同的转角规则,使其看起来像一套系统。
视觉目标
- 斜切应给人精心设计、锐利且明确的感觉。
- 切角要细微,并与组件尺寸成比例。
- 可以对一个或多个角进行倒角,但轮廓仍应一目了然。
- 将斜角作为重复出现的结构性元素,而不是一次性的技巧。
切角令牌
:root {
--corner-cut-sm: 8px;
--corner-cut-md: 14px;
--corner-cut-lg: 24px;
--corner-line: rgba(255, 255, 255, 0.18);
--corner-line-strong: rgba(255, 255, 255, 0.34);
--corner-fill: rgba(10, 14, 24, 0.82);
--corner-accent: #8b5cf6;
}
基本形状
使用 clip-path: polygon(...) 创建真正的斜切轮廓。
.cut-all {
--cut: var(--corner-cut-md);
clip-path: polygon(
var(--cut) 0,
calc(100% - var(--cut)) 0,
100% var(--cut),
100% calc(100% - var(--cut)),
calc(100% - var(--cut)) 100%,
var(--cut) 100%,
0 calc(100% - var(--cut)),
0 var(--cut)
);
}
.cut-top-left-bottom-right {
--cut: var(--corner-cut-md);
clip-path: polygon(
var(--cut) 0,
100% 0,
100% calc(100% - var(--cut)),
calc(100% - var(--cut)) 100%,
0 100%,
0 var(--cut)
);
}
.cut-top-right-bottom-left {
--cut: var(--corner-cut-md);
clip-path: polygon(
0 0,
calc(100% - var(--cut)) 0,
100% var(--cut),
100% 100%,
var(--cut) 100%,
0 100%,
0 0
);
}
带边框的外壳
对于带边框的表面,使用外层包装器和具有相同多边形形状的内层表面。
.cut-shell {
--cut: var(--corner-cut-md);
--border-size: 1px;
position: relative;
padding: var(--border-size);
background: linear-gradient(135deg, var(--corner-line-strong), transparent 46%, var(--corner-line));
clip-path: polygon(
var(--cut) 0,
100% 0,
100% calc(100% - var(--cut)),
calc(100% - var(--cut)) 100%,
0 100%,
0 var(--cut)
);
}
.cut-shell__inner {
min-height: 100%;
padding: clamp(16px, 2.4vw, 28px);
background: var(--corner-fill);
clip-path: inherit;
}
<section class="cut-shell">
<div class="cut-shell__inner">
...
</div>
</section>
按钮模式
.cut-button {
--cut: var(--corner-cut-sm);
position: relative;
display: inline-flex;
min-height: 44px;
align-items: center;
justify-content: center;
gap: 8px;
padding: 0 18px;
border: 0;
color: white;
background: linear-gradient(135deg, var(--corner-accent), color-mix(in srgb, var(--corner-accent), black 28%));
clip-path: polygon(
var(--cut) 0,
100% 0,
100% calc(100% - var(--cut)),
calc(100% - var(--cut)) 100%,
0 100%,
0 var(--cut)
);
}
.cut-button:hover {
filter: brightness(1.08);
}
.cut-button:focus-visible {
outline: 2px solid color-mix(in srgb, var(--corner-accent), white 45%);
outline-offset: 3px;
}
次要按钮
使用较深色的外壳,并采用斜角描边样式。
.cut-button-secondary {
--cut: var(--corner-cut-sm);
color: white;
background:
linear-gradient(var(--corner-fill), var(--corner-fill)) padding-box,
linear-gradient(135deg, var(--corner-line-strong), transparent 58%, var(--corner-accent)) border-box;
border: 1px solid transparent;
clip-path: polygon(
var(--cut) 0,
100% 0,
100% calc(100% - var(--cut)),
calc(100% - var(--cut)) 100%,
0 100%,
0 var(--cut)
);
}
推荐模式
- 主要按钮:使用类似六边形或带倒角的矩形,并统一切角尺寸。
- 次要按钮:使用深色外壳、斜角描边样式,并谨慎使用悬停填充。
- 卡片和面板:使用细边框容器,并在一个或两个角上设置斜切。
- 大型区块:将带斜角的内层区块嵌套在直角外框中,以形成层次感。
- 镜像搭配:左上角加右下角,或右上角加左下角。
调整参数
- 切角尺寸:小型控件使用
6px-10px,卡片使用12px-18px,大型面板使用20px-32px。 - 边框样式:使用细描边、渐变外壳或内嵌线条,让轮廓清晰可辨。
- 一致性:在按钮和容器中复用同一系列多边形。
- 强调色:仅用于主要控件、悬停边框或焦点状态。
- 动效:提亮填充、显现边框或滑入覆盖层;保持形状稳定。
避免
- 在相似组件中使用不一致的切角尺寸。
- 过度裁切,导致可读性变差或让组件看起来像是损坏的。
- 混用圆角胶囊形和倒角几何形,却没有明确的层次关系。
- 只裁切背景,而边框和点击区域仍保持矩形。
- 为所有斜角表面大量使用强调色。
快速检查
- 边框、背景和点击区域遵循相同的斜角几何形状。
- 切角后,文本仍有足够的水平内边距。
- 按钮高度至少为
44px,以满足触控目标尺寸。 - 重复使用的组件采用相同的
--cut尺度。 - 聚焦状态在裁切后的形状周围仍清晰可见。
评论
支持 Markdown