You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在网站上实现连续、干净的背景渐变效果?

如何在网站上实现连续、干净的背景渐变效果?

嘿,我太懂你遇到的这个糟心问题了!刚学CSS做渐变背景时我也踩过一模一样的坑——明明写了渐变代码,结果出来的效果却是一段段重复的,跟你截图里的样子简直一毛一样😅

其实原因超简单:CSS里的背景渐变默认会像普通背景图片一样自动重复平铺,再加上如果你的页面内容还没撑满整个浏览器窗口,body的高度不够,渐变就会在垂直方向反复出现,看起来就断成好几截了。

别担心,解决方法两步就能搞定,直接看具体操作:

  • 第一步:先让页面的根容器(html和body)能占满整个浏览器窗口的高度,避免因为内容太少导致高度不足。用min-height: 100vh就能让元素高度至少等于浏览器视口高度,之后内容变多了也会自动拉伸。同时别忘了重置默认的边距和内边距,不然会出现多余留白:
html, body {
  margin: 0;
  padding: 0;
}

body {
  min-height: 100vh;
}
  • 第二步:给body设置渐变背景时,加上background-repeat: no-repeat禁止渐变重复平铺。也可以把属性写在一行简写里,看起来更清爽:
body {
  min-height: 100vh;
  margin: 0;
  padding: 0;
  /* 这里可以换成你自己需要的渐变方向和颜色值 */
  background: linear-gradient(to bottom, #4facfe 0%, #00f2fe 100%) no-repeat;
}

要是你想要滚动页面时,渐变背景固定在浏览器窗口不跟着内容动,还能把no-repeat换成background-attachment: fixed,这样不管页面多长,渐变都会稳稳铺满整个视口,完全不会重复~

试一下这个方法,你就能得到期望中那种干净、连续的渐变背景啦!

备注:内容来源于stack exchange,提问作者Helmet22

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 11:23:08