CSS3 线性渐变(linear-gradient)我们比较熟悉,是沿着一根轴线(水平或垂直)改变颜色,从起点到终点颜色进行顺序渐变(从一边拉向另一边),重复线性渐变(repeating-linear-gradien)呢?

一、重复线性渐变介绍

  repeating-linear-gradient()函数创建一个由重复线性渐变组成的 。它类似于linear-gradient() 并采取相同的参数,但它会无限的重复整个过程至覆盖其整个容器

1、语法结构:

repeating-linear-gradient(  [ <angle> | to <side-or-corner> ,]? <color-stop> [,<color-stop>]+ )\---------------------------------/\----------------------------/Definition of the gradient line      List of color stops  where <side-or-corner> = [left | right] || [top | bottom]and <color-stop>     = <color> [ <percentage> | <length>]?

2、参数介绍

(1)angle:渐变的角度,0deg到360deg,也可以是负数,默认值180deg。除了deg可以表示角度之外,turn、grad、rad,都可以表示角度。比如一个满圆360deg=1turn。

(2)side-or-corner:用方位来表示角度,比如 to top 表示0deg,to bottom 表示180deg,to right 表示90deg,to left 表示270deg。其实就是y轴的顺时针旋转。

  也可以 to left top 表示从右下到左上的对角线。to left bottom 表示从右上到左下的对角线。 默认是从上往下。

(3)color-stop:由颜色和位置组成。

  颜色是必须值,位置可以是固定像素值,也可以是百分比值。多个颜色用逗号隔开。

  比如: #ff8 50%,rgba(255,255,255, .6) 120px,transparent(透明度) 12%等。

3、其实重复渐变有点像ps里面的填充图案,定义一个图案为基本单元,然后在一个区域里面进行平铺,达到重复的目的。

二、案例介绍

1、两个颜色构成一个基本单元,第一个颜色从0开始,第二个颜色占据容器高度的10%的位置。所以容器高,渐变条就高,与容器高度保持一致的变化。

// HTML:
<div class="box"></div>// CSS:
html,body{height:100%;
}
body{background: repeating-linear-gradient(#a18cd1, #fbc2eb 10%);
}

2、三个颜色构成一个单元,加上角度。

html,body{height:100%;
}
body{background: repeating-linear-gradient(45deg,#3f87a6, #ebf8e1 15%, #f69d3c 20%);
}

3、颜色可以固定具体的位置,当结束颜色和下一个起始颜色的位置是一样,但颜色值不一样的时候,可以产生很生硬的过渡,如果两个不同颜色之间的距离越大,渐变越柔和。颜色单元的高度固定的时候,不随着容器的大小发生高度的变化,只是平铺多少的变化了。

body{background: repeating-linear-gradient(#ff9a9e, #fad0c4 40px,#eee 40px, #eee 50px);
}

4、可以直接用transparent表示透明。

.box{width:300px;height:260px;margin:20px auto;background: repeating-linear-gradient(transparent,transparent 10px, rgba(245,219,203,.5) 10px, rgba(245,219,203,.5)20px), url(images/fengjing.jpg);
}

如下图所示:从上到下 0 - 10px 是透明,10px - 20px 是 rgba(245,219,203,.5) ,无限重复,直到填满父级的高度

三、实例实现

  这样一个效果如何实现呢?

  有了上面的知识背景,那么实现就比较简单咯。分析下:

首先这是由一个父级div(相对定位),和两个子级div(绝对定位)构成的

      <div class="pr box"><div class="pa item1"></div><div class="pa item2"></div></div>

1. 底图颜色是由其中一个子级线性渐变从开头0%~100%的一个铺满;

.item1 {background-image: linear-gradient(90deg, #0088cc 0%, #1ce9e9 100%);
}

2. 中间的间隔(重复线性渐变:透明色和中间颜色间隔重复)

0-5px为透明(不影响底色),5-10px为隔断色(与主图背景颜色融合一致,形成隔断的效果)

.item2 {background: repeating-linear-gradient(90deg,transparent,transparent 5px,rgb(0, 18, 48) 5px,rgb(0, 18, 48) 10px);
}

浅析重复线性渐变repeating-linear-gradient如何使用相关推荐

  1. 16.SVG线性渐变(Linear Gradient)

    SVG 渐变 和CSS3一样,SVG也支持渐变,渐变就是从一个颜色到另外一个颜色的平滑过渡,SVG支持单个元素使用多个渐变.渐变方式有两种:线性和径向. SVG 线性渐变 - linearGradie ...

  2. CSS重复线性渐变之画格子

    正式开始文章前,先看图,看到以下图片你会想到什么呢?是不是程序员的标配来了,格子衫.没错,今天的内容就是用CSS画格子. 前言 看到上面各种各样的格子,你会用什么方式实现呢?由于格子的大小间隙及方向多 ...

  3. CSS 背景色 背景图片 渐变背景 - 重复线性渐变 background-image: repeating-linear-gradient()

    repeating-linear-gradient() 用来生成重复的线性渐变图案 基础语法 background-image: repeating-linear-gradient(angleValu ...

  4. CSS3渐变——线性渐变

    渐变背景一直以来在Web页面中都是一种常见的视觉元素.但一直以来,Web设计师都是通过图形软件设计这些渐变效果,然后以图片形式或者背景图片的形式运用到页面中.Web页面上实现的效果,仅从页面的视觉效果 ...

  5. 再说CSS3渐变——线性渐变

    渐变背景一直以来在Web页面中都是一种常见的视觉元素.但一直以来,Web设计师都是通过图形软件设计这些渐变效果,然后以图片形式或者背景图片的形式运用到页面中.Web页面上实现的效果,仅从页面的视觉效果 ...

  6. html垂直线性渐变,再说CSS3渐变——线性渐变

    渐变背景一直以来在Web页面中都是一种常见的视觉元素.但一直以来,Web设计师都是通过图形软件设计这些渐变效果,然后以图片形式或者背景图片的形式运用到页面中.Web页面上实现的效果,仅从页面的视觉效果 ...

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

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

  8. html5 基本布局+新标签+新选择器 + 线性渐变

    html5 基本布局+新标签 <!DOCTYPE html> <html lang="en"> <head><meta charset=& ...

  9. 渐变:线性渐变、径向渐变

    渐变: CSS3 渐变(gradients)可以让你在两个或多个指定的颜色之间显示平稳的过渡. 分为线性渐变(linear-gradient).径向渐变(radial-gradient) 线性渐变(l ...

  10. CSS3线性渐变与径向渐变

    目标:使用background-image属性实现渐变背景效果 CSS 定义了两种渐变类型: 线性渐变(向下/向上/向左/向右/对角线) 径向渐变(由其中心定义) 1.CSS 线性渐变 如需创建线性渐 ...

最新文章

  1. php字符串替换多余逗号_PHP字符过滤函数去除字符串最后一个逗号(rtrim)
  2. 听说你想去大厂看妹子,带你看看字节跳动实习算法岗面试长啥样?
  3. BZOJ-3171-循环格-TJOI2013-费用流
  4. 【Python基础】太香了!推荐6个Python数据分析神器!!
  5. shell 除法 小数点
  6. 第七章 ---- 异常处理
  7. Redis实现计数器---接口防刷---升级版(Redis+Lua)
  8. 【2012百度之星资格赛】E:C++ 与Java
  9. php laravel 理解,程序员-说一下PHP框架Laravel,如何理解她的思想
  10. Apache Flink 误用之痛
  11. 软件项目管理课后习题——第1章软件项目管理概述
  12. Java 读取Word文本框中的文本/图片/表格
  13. 成都一名程序员跳楼,程序员眼中的成都和天府软件园
  14. win7已经阻止此发行者在您的计算机上运行软件,Win7系统提示无法验证发布者windows已阻止软件的解决方法教程[多图]...
  15. ASP.NET 三层架构技术 人力资源管理系统项目HR (深入WebServic
  16. 测绘——如何在win10环境下安装CAD2006+CASS7.0
  17. 【MYSQL报错】ALTER TABLE causes auto_increment resequencing, resulting in duplicate entry
  18. 正则表达式:密码必须为8~16位非空字符,并包含大小写字母、数字、特殊字符
  19. 树的数据结构代码_如何以无代码方式学习树数据结构
  20. 怎么样写好头部姿态的研究背景?

热门文章

  1. 训练集和验证集的划分
  2. 手机里面android什么意思,wipe什么意思?安卓手机如何wipe
  3. 2021周更06:春节假期开始
  4. 一天狂点3.7万个赞! 男子因“点赞过多”被大众点评网处罚 法庭上吵翻
  5. Java Instrument
  6. 算法大赛神器:集成学习方法关键点介绍
  7. 【AVD】NDK MediaCodec 编码中的坑 configure: err(-2147479551) error -38 Fatal signal 4 (SIGILL) ILL_ILLOPC
  8. 《彼得·林奇的成功投资》书中的精髓:如何选择帮助我们实现资产翻10倍的股票?以及如何避开让我们血本无归的股票?
  9. 推荐一部烂片《东方华尔街》
  10. 深海探测机器人——“海洋一号”成功出航!