使用css直接写渐变,对于现在而言,应该属于比价简单的一件事了,在一定程度上,扁平化的设计趋势的出现,减少了使用渐变色的场景,但是并不影响我们逐渐的熟悉线性渐变Linear-gradient的写法。

更进一步的话,应该就是斑马线的实现了,只要多谢几遍,其实也没什么难度。

最近在学习《css揭秘》,里面关于linear-gradient的用法,真的让人有大开眼界的感觉。

在他讲解的切角效果的章节里面,扩展几个css图形变化。

1、单个切角

background: linear-gradient(-45deg, transparent 15px, #58a 0);

  通过调整角度,可以做成不同角度的切脚效果,调整transparent后面的数字值,可以调整切角效果的大小。

2、两个切角

background: linear-gradient(-45deg, transparent 15px, #58a 0) right,
linear-gradient(45deg, transparent 15px, #58a 0) left;
background-size: 50% 100%;
background-repeat: no-repeat;

  在超过一个切角的效果的时候,就需使用css3的background应用多层背景的特性来完成多重渐变,从而实现多个切角,并且要确保背景不得重复(background-repeat),划分每个背景图片的大小(background-size)。

下面实现的效果也还都属于简单效果,也是在不断重复渐变,并确认大小。

利用角度确定切角形成的角度大小,利用transparent后面的值,确定切角形成的形状大小,利用left,right, top, bottom确定切角在每一个切片区的位置。

这个也属于四个切角效果,唯一要点是把切角都放在一个角落里面,导致看起来就是个菱形的效果,如果将颜色改变一下,就是我们正常看见的一个正规的合乎视觉的菱形。

background: linear-gradient(-60deg, transparent 15px, #58a 0) top left,
linear-gradient(60deg, transparent 15px, #58a 0) top right,
linear-gradient(-120deg, transparent 15px, #58a 0) bottom left,
linear-gradient(120deg, transparent 15px, #58a 0) bottom right;
background-repeat: no-repeat;
background-size: 50% 50%;

background: linear-gradient(-60deg, transparent 15px, #58a 0) top left,
linear-gradient(60deg, transparent 15px, #58a 0) bottom left,
linear-gradient(-120deg, transparent 15px, #58a 0) top right,
linear-gradient(120deg, transparent 15px, #58a 0) bottom right;
background-repeat: no-repeat;
background-size: 50% 50%;

  

background: linear-gradient(-45deg, transparent 15px, #58a 0) top left,
linear-gradient(45deg, transparent 15px, #58a 0) top right,
linear-gradient(-90deg, transparent 10px, #58a 0) bottom left,
linear-gradient(90deg, transparent 10px, #58a 0) bottom right;
background-repeat: no-repeat;
background-size: 50% 50%;

内凹圆角的实现

background: radial-gradient(circle at top left, transparent 15px, #58a 0) top left,
radial-gradient(circle at top right, transparent 15px, #58a 0) top right,
radial-gradient(circle at bottom left, transparent 15px, #58a 0) bottom left,
radial-gradient(circle at bottom right, transparent 15px, #58a 0) bottom right;
background-repeat: no-repeat;
background-size: 50% 50%;

  

单个标签实现多个圆

background: radial-gradient(circle at center center, transparent 15px, #58a 0) top left,
radial-gradient(circle at center center, transparent 15px, #58a 0) top right,
radial-gradient(circle at center center, transparent 15px, #58a 0) bottom left,
radial-gradient(circle at center center, transparent 15px, #58a 0) bottom right;
background-repeat: no-repeat;
background-size: 50% 50%;

background: radial-gradient(circle at center right, transparent 15px, #58a 0) top left,
radial-gradient(circle at center left, transparent 15px, #58a 0) top right,
radial-gradient(circle at center left, transparent 15px, #58a 0) bottom left,
radial-gradient(circle at center right, transparent 15px, #58a 0) bottom right;
background-repeat: no-repeat;
background-size: 50% 50%;

  

不断实验的话,能够发现更多更好玩的形状。

补充一个线性渐变的使用场景,自定义文字下划线:

<p class="text-decoraion">在一定程度上,扁平化的设计趋势的出现,减少了使用渐变色的场景,但是并不影响我们逐渐的熟悉线性渐变Linear-gradient的写法。</p>
.text-decoration{
color: red;
line-height: 2;
background: linear-gradient(currentColor, currentColor) no-repeat 0 2.15em;
background-size: 40px 1px;
}

  通过background-position的位置,定位下划线所在的位置,通过background-size的第一个值width设置下划线长度,第二个值height设置下划线粗细,可以很细粒度的控制下划线的长宽和位置。

  

css线性渐变--linear-gradient的更多相关文章

  1. CSS线性渐变

    /*CSS线性渐变*/ FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColorStr=#ffffff, ...

  2. css线性渐变兼容

    css线性渐变兼容 background: linear-gradient(top, rgba(54, 77, 127, 0.8), rgba(54, 77, 127, 0.8)); backgrou ...

  3. 兼容IE与firefox、chrome的css 线性渐变(linear-gradient)

    现行渐变首先看下示例(1)垂直渐变 (2)垂直渐变 IE系列 filter: progid:DXImageTransform.Microsoft.Gradient(startColorStr='#FF ...

  4. 深入理解CSS线性渐变linear-gradient

    × 目录 [1]定义 [2]渐变线 [3]色标 [4]重复渐变 [5]多背景 [6]应用场景 [7]IE兼容 前面的话 在CSS3出现之前,渐变效果只能通过图形软件设计图片来实现,可拓展性差,还影响性 ...

  5. 兼容IE与firefox的css 线性渐变(linear-gradient)

    IE系列 filter: progid:DXImageTransform.Microsoft.Gradient(startColorStr='#FF0000',endColorStr='#F9F900 ...

  6. CSS3之线性渐变(linear gradients)

    线性渐变(linear gradients)沿着一根轴线改变颜色,从起点到终点颜色进行顺序渐变. 语法: background:linear-gradient(direction,color-stop ...

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

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

  8. CSS3渐变——线性渐变

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

  9. CSS3渐变(Gradients)-线性渐变

    CSS3渐变(Gradients)可以让你在两个或多个指定颜色之间显示平稳的过度,包括透明度. 以前,你必须使用图像来实现这些效果.但是,通过Css3渐变(Gradients),你可以减少下载的事件和 ...

随机推荐

  1. (2016弱校联盟十一专场10.3) A.Best Matched Pair

    题目链接 #include<cstdio> #include<cstring> #include<algorithm> #include<stack> ...

  2. PHP语句【变量、运算符表达式、语句】

    一.变量的方法.1.empty可以用empty的方法能够判断变量的值是不是为空.①如果我们看一下某一个变量是不是已经存在过了假如我们输出一下 var_dump (empty($a)); 返回值为tru ...

  3. rename

    重命名文件名: # rename hosts.conf.正式配值文件 hosts.conf.正式配置文件 hosts.conf.正式配值文件 [root@monitor- vhost]# ls hos ...

  4. sqlserver 中row_number,rank,dense_rank,ntile排名函数的用法

    1.row_number() 就是行号 2.rank:类似于row_number,不同之处在于,它会对order by 的字段进行处理,如果这个字段值相同,那么,行号保持不变 3.dense_rank ...

  5. 【转载】CentOS服务器配置VPN详解

    转载来自: https://bbs.aliyun.com/read/162297.html http://www.wanghailin.cn/centos-7-vpn/ 操作系统:CentOS 6.3 ...

  6. Pyqt 国际化多语言支持

    国际化是指在代码设计上加入能方便的移植到其他国家和地区的特性, 给Pyqt 添加国际化支持需要五步 一.编写GUI.py 在要被翻译的text上用tr方法括起来 # -*- coding: utf-8 ...

  7. MySQL - 常用命令及常用查询SQL

    常用查询SQL #查看临时目录 SHOW VARIABLES LIKE '%tmp%'; #查看当前版本 SELECT VERSION(); 常用命令 #查看当前版本,终端下未进入mysql mysq ...

  8. 解决rand()伪随机数

    利用time改变种子 例: #include <stdlib.h> #include <stdio.h> #include <time.h>//使用当前时钟做种子 ...

  9. Java 根据两个经纬度坐标计算距离

    public class Distance{ private static final double EARTH_RADIUS = 6378137;    private static double  ...

  10. LightOJ1171 Knights in Chessboard (II)(二分图最大点独立集)

    题目 Source http://www.lightoj.com/volume_showproblem.php?problem=1171 Description Given an m x n ches ...