css 背景渐变颜色如何设置_linear-gradient 与颜色参数使用
发布时间 - 2026-01-29 00:00:00 点击率:次linear-gradient() 是 background-image 的值,需配合颜色停止点使用;方向可写 to right 或 45deg 等,不写默认 to bottom;颜色透明度表达方式须统一;简写 background 会清空渐变,应单独设 background-image 或将渐变置于 background 值最前。
linear-gradient() 基本语法和方向写法
linear-gradient() 不是 CSS 属性,而是 background 或 background-image 的值。它必须配合颜色停止点(color stop)使用,否则无效。
方向可以写关键词(如 to right)、角度(如 45deg),注意:关键词前必须带 to,角度默认顺时针从正上方(0deg)开始算。
-
to right等价于90deg,从左到右渐变 -
to bottom等价于180deg,从上到下渐变 - 不写方向时默认为
to bottom(不是180deg,但效果相同)
颜色参数支持多种格式,但不能混用单位
每个颜色停止点可写 rgb()、hsl()、十六进制(#fff)、英文名(red),也可加透明度:rgba()、hsla()、或用 color-mix()(较新,兼容性差)。
关键限制:同一组渐变中,所有颜色的 alpha 表达方式需一致。比如不能一半用 rgba(0,0,0,0.5),一半用 #0008(后者是 8 位 hex,等价于 rgba(0,0,0,0.5)),但浏览器可能解析不一致——Chrome 支持,Firefox 旧版会忽略 #0008。
- 推荐统一用
rgba()或统一用 8 位 hex(如#ff000080)来控制透明度 - 避免在同一个
linear-gradient()中混用hsl(0, 0%, 0%)和#000——虽能工作,但可读性和维护性差 - 颜色后可跟位置,如
red 20%、blue 100px,单位必须明确,百分比基于容器宽高(非渐变长度)
常见错误:背景被覆盖、渐变不显示、边缘出现白边
最常被忽略的是:渐变作为 background-image,若同时设了 background-color,后者会垫底,但不会“遮住”渐变;而如果写了 background: red; 这种简写,它会**清空** background-image,导致渐变消失。
- 用
background-image: linear-gradient(...);单独设置,再用background-color设底色(安全) - 若用简写
background,必须把渐变写在最前面,例如:background: linear-gradient(to right, #000, #fff), #333;—— 后面的#333是 fallback 背景色,仅当渐变失效时生效 - 渐变默认铺满整个元素,但若容器有
padding或border,且未设background-clip,渐变可能延伸到 padding 区域,造成视觉偏差;此时加background-clip: padding-box;
多色停点与硬边过渡技巧
两个颜色之间默认平滑过渡,但可通过重复位置实现“硬切”。例如 red 50%, blue 50% 就会在中点突变,无混合带。
background-image: linear-gradient( to right, #f00 0%, #f00 50%, #00f 50%, #00f 100%);
这种写法常用于模拟分割线、状态条分段、或图标背景。注意:相邻两个停点位置相同时,浏览器会取后一个颜色;位置不按顺序写(如 70%, 30%)会导致未定义行为,应始终升序排列。
停点位置允许省略,浏览器自动均分,但一旦指定某个位置,其他未指定的位置就不再均分——比如 red, yellow 70%, blue 中,red 默认是 0%,blue 默认是 100%,中间只有一段过渡。
渐变本身不触发重排,但频繁修改颜色或方向(尤其用 JS 动态改)可能触发重绘;真要动画,优先用 background-position 移动渐变图案,而不是改 linear-gradient() 参数。
# css
# js
# 浏览器
# 排列
# 重绘
# red
# firefox
# chrome
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法
清除minerd进程的简单方法
如何用AI帮你把自己的生活经历写成一个有趣的故事?
网站制作软件有哪些,制图软件有哪些?
如何在阿里云香港服务器快速搭建网站?
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
网站制作软件免费下载安装,有哪些免费下载的软件网站?
Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明
Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全
Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】
进行网站优化必须要坚持的四大原则
非常酷的网站设计制作软件,酷培ai教育官方网站?
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
如何为不同团队 ID 动态生成多个非值班状态按钮
Laravel如何使用Collections进行数据处理?(实用方法示例)
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程
Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧
html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】
高端企业智能建站程序:SEO优化与响应式模板定制开发
长沙做网站要多少钱,长沙国安网络怎么样?
香港服务器租用每月最低只需15元?
动图在线制作网站有哪些,滑动动图图集怎么做?
Android 常见的图片加载框架详细介绍
Laravel如何自定义分页视图?(Pagination示例)
Android中AutoCompleteTextView自动提示
Laravel怎么实现验证码(Captcha)功能
Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程
php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】
电商网站制作价格怎么算,网上拍卖流程以及规则?
想要更高端的建设网站,这些原则一定要坚持!
Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践
如何在宝塔面板中创建新站点?
WordPress 子目录安装中正确处理脚本路径的完整指南
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】
MySQL查询结果复制到新表的方法(更新、插入)
西安专业网站制作公司有哪些,陕西省建行官方网站?
JavaScript如何实现倒计时_时间函数如何精确控制
教学论文网站制作软件有哪些,写论文用什么软件
?
HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】
Laravel怎么配置S3云存储驱动_Laravel集成阿里云OSS或AWS S3存储桶【教程】
Win11怎么设置默认图片查看器_Windows11照片应用关联设置
如何在建站之星网店版论坛获取技术支持?
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤
Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
UC浏览器如何设置启动页 UC浏览器启动页设置方法
Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】


