文章目录

  • 前言
  • 普通渐变
  • 条纹
  • 条纹重复
  • 虚线
  • 斜向条纹
  • 三角形
  • 进度条动画 progress
  • 网格
  • 圆点阵列
  • 波点图案

前言

本文主要介绍linear-gradient的使用方法,既有普通的用法,也有高级用法,主要实现的功能有渐变、条纹、斜向条纹、网格、模拟虚线、progress进度条动画。看完本篇文章,相信你一定会有所收获
本文主要参考书籍【CSS揭秘】


普通渐变

-最常见的用法是从字面意思理解,实现一个渐变背景,如下图效果
background: linear-gradient(to right, #30e8bf, #ff8235);

条纹

调整色标位置,实现两个非渐变效果
background: linear-gradient(to right, #30e8bf 50%, #ff8235 50%);
参数解释,颜色后面跟一个百分比,表示当前颜色的过渡位置,如果前后两个颜色的过渡位置一样,则不会出现平滑渐变效果,而是突然变化

条纹重复

渐变背景除了铺满整个背景,还可以手动调整渐变尺寸, 通过设置background-size: 100% 50px,设置宽度方向100%铺满,竖向50px,此时单个背景色高度是25px,默认情况下是重复平铺整个背景,效果如下,

background: linear-gradient(to bottom, #30e8bf 50%, #ff8235 50%);
background-size: 100% 50px;

这里还有个缩写小技巧,如果后一个色标位置小于前一个色标的位置,则后一个色标位置会被它前面色标位置最大值替代,如上线三个不同颜色的条纹可以缩写成这样

      background: linear-gradient(to bottom,#30e8bf 33.3%,/* 这里的0,是缩写,相当于33.3% */#2a6b7e 0,#2a6b7e 66.6%,/* 这里的0,是缩写,相当于66.6% */#ff8235 0);background-size: 100% 50px;

虚线

搭配使用transparent可以实现虚线效果,在写法上有两种

      height: 1px;/* repeating写法和下面带background-size效果是一样的 *//* background-image: repeating-linear-gradient(to right,gray,gray 10px,transparent 0,transparent 20px); */background-image: linear-gradient(to right,gray,gray 10px,transparent 0);background-size: 20px 100%;


额外提一句:实现虚线还可以使用svg,关键词:stroke-dasharray

斜向条纹

linear-gradient的第一参数可以设置方向,除了水平垂直外,还可以设置角度。现在尝试将其设置为45deg

      background: linear-gradient(45deg, #30e8bf 50%, #ff8235 50%);background-size: 50px 50px;

发现这些格子没有无缝衔接,这时候可以利用css的另一个函数repeating-linear-gradient,这个函数会无限重复色标,所以色标位置应该填写具体数值,而且不需要设置background-size,如下图

      background: repeating-linear-gradient(45deg,#30e8bf 0,#30e8bf 25px,#ff8235 0,#ff8235 50px);

三角形

在创建斜向条纹时,无意中发现了三角形,现在我们尝试将另一颜色设置为透明,就能完美的实现了一个三角形啦

      height: 30px;width: 30px;background-image: linear-gradient(45deg, gray 50%, transparent 0);

进度条动画 progress

斜向条纹搭配ainimation, 动态改变background-position-x可以实现进度条动画

    .div10 {height: 20px;background: repeating-linear-gradient(45deg,#30e8bf 25%,#ff8235 0,#ff8235 50%,#30e8bf 0,#30e8bf 75%,#ff8235 0);background-size: 30px 30px;animation: roll 1s linear infinite;}@keyframes roll {from {background-position-x: 0;}to {background-position-x: 30px;}}

网格

linear-gradient可以通过逗号,叠写多层渐变,横向网格+竖向网格叠加可以实现网格效果

      background-color: teal;background-image: linear-gradient(white 1px, transparent 0),linear-gradient(90deg, white 1px, transparent 0);background-size: 30px 30px;

多个linear-gradient叠加,再组合多个background-size还可以实现下图中效果

      background-color: teal;background-image: linear-gradient(white 2px, transparent 0),linear-gradient(90deg, white 2px, transparent 0),linear-gradient(rgba(255, 255, 255, 0.2) 1px, transparent 0),linear-gradient(90deg, rgba(255, 255, 255, 0.2) 1px, transparent 0);background-size: 75px 75px, 75px 75px, 15px 15px, 15px 15px;

通过颜色透明度的叠加,可以实现类似桌布的效果

      background-color: white;background-image: linear-gradient(90deg,rgba(255, 0, 0, 0.5) 50%,transparent 0),linear-gradient(rgba(255, 0, 0, 0.5) 50%, transparent 0);background-size: 30px 30px;

圆点阵列

通过径向渐变radial-gradient可实现圆点,重复平铺就能形成圆点阵列
首先回顾下radial-gradient参数

background-image: radial-gradient(shape size at position, start-color, …, last-color);

描述
shape 确定圆的类型, 可取椭圆ellipse,圆形circle
size 定义渐变的大小
position 定义渐变的位置,可取center(默认)、top、bottom
start-color, …, last-color 用于指定渐变的起止颜色
      background-color: #f2f2f2;background-image: radial-gradient(gray 20%, transparent 0);background-size: 30px 30px;

波点图案

两层径向渐变,通过设置background-position将第二层背景偏移量设置为第一层的一半,可以实现波点图案

CSS小技巧---线性渐变linear-gradient/径向渐变radial-gradient相关推荐

  1. CSS3 渐变: 线性渐变 linear-gradient 和 径向渐变 radial-gradient

    渐变背景也是CSS3 的新特性,通过它可以在不使用图像的情况下,创建从一种颜色到另一种颜色的过渡.使用渐变的好处是,可以减少对图像的依赖,进而降低浏览网页时的带宽消耗,提高网站的访问速度. 渐变,就是 ...

  2. css 自动换行_前端必备!20个CSS小技巧

    在日常学习和工作中,你是否经常觉得时间不够用?为了帮助你提高效率,今天,就为大家分享一些CSS小技巧,如果你感觉有用,也可以收藏与分享给你的小伙伴们~ 1. 文字水平居中 将一段文字置于容器的水平中点 ...

  3. 日常开发CSS小技巧整理

    日常开发CSS小技巧整理 1.解决inline-block元素设置overflow:hidden属性导致相邻行内元素向下偏移 .wrap {display: inline-block;overflow ...

  4. css文字换行时对不齐,css小技巧 - 换行对齐

    假如需要你实现换行对齐,你可能会想到ul标签和li标签自带这种功能 确实在使用li标签自带的项目符号的时候可以直接使用,但是有时可能会有不一致时 就需要我们动手写两行代码来实现一下,比如这种效果: 项 ...

  5. 12个你可能不知道的CSS小技巧

    本文整理出12个开发中你有可能没有用到过的CSS小技巧,一起来看看吧~ 1. 自定义光标(cursor) 首先来看一下CSS的内置光标样式.平时开发中用到的基本上就是default.pointer.n ...

  6. 10 个不错的 CSS 小技巧

    本文为译文,采用意译. CSS 大约有两百个属性.很多属性都是相互关联的,理清楚每一个属性细节是不可能的.所以,本文分享一些有用的 CSS 小技巧,方便开发者和设计师参考. 1. 打字效果 Typin ...

  7. css新特性:线性渐变详解(重复性线性渐变、径向渐变、重复性径向渐变的使用)

    线性渐变 线性渐变 重复性线性渐变 径向渐变 重复性径向渐变的使用 线性渐变 线性渐变是向下.向上.向左.向右.对角方向的颜色渐变. 其语法格式为: background-image: linear- ...

  8. 前端开发者应该知道的 CSS 小技巧

    一些小技巧让你的CSS技术更专业 使用:not()去除导航上不需要的边框 为body添加行高 垂直居中任何元素 逗号分离的列表 使用负nth-child选择元素 使用SVG图标 文本显示优化 在纯CS ...

  9. CSS小技巧之两行文字两端对齐

    假如一个页面需要填写姓名和联系方式,为了使样式美观,通常需要文字两端对齐,即"姓"和"联"对齐,"名"和"式"对齐,通常 ...

最新文章

  1. php mysql安装位置_安装php时,--with-mysql指定的是哪个路径呢?
  2. MySQL数据库内连接查询inner join...on
  3. 【图论专题】欧拉路径和欧拉回路
  4. php技术会议总结,【技术产品】总结PHP编程20大效率要点
  5. 【 Vivado 】使用Vivado设计一个加/减法器的IP核(简洁英文版)
  6. android自定义布局实现优惠券效果
  7. python assert的作用
  8. 双指针法(leetcode分类解题,C++代码详细注释)
  9. BOOTSTRAP ---- 重要部分
  10. mysql两个查询结果差集_【Mysql】求两个表(查询结果)的差集
  11. Intellij IDEA 2017 如何导入 GitHub 中的项目
  12. Linux---管道通信的使用
  13. iyiw oracle_Oracle 单行函数
  14. 麻瓜编程python_麻瓜编程 - 主页
  15. Neuralizing Regular Expressions for Slot Filling 神经网络转回自动机
  16. 深入理解计算机系统 csapp 家庭作业(第二章完整版)
  17. 日本首次利用iPS视细胞治疗视网膜色素变性
  18. 计算机网络物理层之信道与信道容量
  19. 【快进来,这不是毒鸡汤,只是有毒而已】
  20. 第11周编程题在线测试

热门文章

  1. [零基础学python]集成开发环境(IDE)
  2. 对于Osmdroid源码资源的简单研究
  3. MAC安装jmeter以及JDK配置
  4. 通过抓包获取内涵段子的接口
  5. HttpClient实战爬虫B站番剧
  6. 步态识别 数据集 (一)
  7. SQL必知必会笔记(上)
  8. 汉字区位码查询与算法——microsoft visual studio 2005系列
  9. 2021浏阳一中高考成绩查询,浏阳市2021年“三考”增加考生万余名
  10. 用一杯水的单纯 面对一辈子的复杂