20251115复盘记录:让分页乖乖“坐好”+ 卡片统一渐变描边与圆角

🌈 一、这次到底动了啥?(一句话总结)

分页贴卡片、内容区撑满视窗、卡片统一 4px 圆角 + 1px 渐变描边、去掉原生 number 的上下箭头。


🧩 二、每个改动点都讲讲(轻松但严谨)

🍰 1)分页条乖乖贴在卡片下方

以前分页掉在页面底部,下面留一块空空的白色区域,看起来有点寂寞。

现在:

  • 外层容器:height: calc(100vh - offset)
  • 内容区 flex 占满:flex: 1
  • 分页区用 margin-top: auto 自动推到底

稳了。

分页终于坐在该坐的位置,像是"好!我贴这儿不动了!"的感觉。


🎀 2)数字输入框的原生箭头 → bye~

ElementPlus 的 controls="false" 只是让它不显示组件的按钮,

但浏览器原生 spinner 还是会偷偷冒出来:

于是补了这段"温柔但有效"的隐藏法术:

ruby 复制代码
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

最终效果:小清爽、小统一、小可爱。


🧊 3)卡片圆角统一为 4px(再配合 overflow: hidden)

所有卡片(包括"创建应用"的那块)统一 4px:

css 复制代码
border-radius: 4px;
overflow: hidden;

背景、图片、阴影都乖乖被圆角裁切,视觉秩序一下子出来了。


🌈 4)卡片依类型显示「1px 渐变描边」

两个不同类型的应用 → 两种独立渐变外边框。

但我没有走"伪元素 + mask"这种偏硬核的路线(lint 还会唠叨我)。

最终方案使用:

css 复制代码
border: 1px solid transparent;
border-image: linear-gradient(...) 1;

🛠 三、关键改的文件

文件名 职责
home.vue 布局、圆角、渐变边框、分页定位全部在这里
index.vue 隐藏数字输入 spinner 的 CSS 补充

非常干净,改动范围不乱跑。


🧠 四、为什么这样实现?(专业但不废话)

✔ calc 配合视口

因为你不想内容区"短一截",也不想无限撑满,把顶部的导航栏扣掉即可。

✔ margin-top: auto

用 flex 让分页乖乖到容器底部,响应式自然又不容易炸。

✔ border-image 赢麻了

  • 不用写 mask
  • 不用 hack
  • 圆角自然生效
  • 浏览器心情更好(你心情也更好)

✔ 隐藏原生 spinner 的原因

为了视觉统一和手感更顺滑,是你看不见但会真切感受到的那种小优化。


🧯 五、踩到的小坑 & 解决办法

❗1)CSS 不小心写进了 <script>

页面直接红到发光 ⚠️

→ 恢复 data() / mounted(),重新整理结构。

❗2)mask 太爱挑浏览器

lint 提示 + 圆角锯齿(哎呦)。

→ 换 border-image,一切回归顺滑。

❗3)ElementPlus 的圆角覆盖你写的圆角

→ 调整选择器权重,仅对当前页面作用,必要时加 !important(谨慎使用)。

相关推荐
IT_陈寒12 小时前
Java中equals方法比了个寂寞?原来这才是正确的重写姿势
前端·人工智能·后端
默_笙12 小时前
🚓 分诊台与拆题术:让 RAG 学会判断和规划
前端·javascript
CopyCode12 小时前
用 AI 迁项目有多爽?我把 Webpack 迁 Vite 的全过程记下来了
前端·架构
去伪存真12 小时前
Electron 自动化发布指南:GitHub Actions 跨平台打包全纪录
前端·electron
计算机魔术师12 小时前
OpenAI智能体失控闯进美国政府网站,53张用户图片外泄背后
前端
颜进强12 小时前
14 · NestJS ExecutionContext 执行上下文:守卫、拦截器、过滤器拿到的"同一个 context",为什么能力不一样?
前端·后端·ai编程
程序员Flycan12 小时前
🚀 跨域终结者:前端代理服务器(Proxy)原理解析与配置总结
前端
怕浪猫12 小时前
顶级模型一句话,AI 写出了能玩的 QQ飞车
前端·面试·github
huakoh12 小时前
MCP 报错分不清?先看响应里是 result 还是 error
前端
呃呃呃呃ex12 小时前
10. 现代前端工程化:ES6 React 项目实战与原理解析
前端·javascript