一、什么是less?

一种 动态 样式 语言.

LESS 将 CSS 赋予了动态语言的特性,如 变量, 继承,运算, 函数.

LESS 既可以在 客户端 上运行 (支持IE 6+, Webkit, Firefox),也可一在服务端运行 (借助Node.js).

二、什么是颜色梯度?

本人没有文化,正确地说 线性梯度(-webkit-)linear-gradient 是gradient属性的一个分支。

————————————————————————

css3 :linear-gradient 加油站:

http://dev.opera.com/articles/view/css3-linear-gradients/(opera)

https://ie.microsoft.com/testdrive/graphics/cssgradientbackgroundmaker/default.html(ms)

https://developer.mozilla.org/en/CSS/linear-gradient(moz)

http://www.webkit.org/blog/1424/css3-gradients/(webkit)

生成工具:http://westciv.com/tools/gradients/


三、less与 css gradient 相关的function:color function

Color 函数

LESS 提供了一系列的颜色运算函数. 颜色会先被转化成 HSL 色彩空间, 然后在通道级别操作:

lighten(@color, 10%); // return a color which is 10% _lighter_ than @color(减淡)

darken(@color, 10%); // return a color which is 10% _darker_ than @color(加深)

saturate(@color, 10%); // return a color 10% _more_ saturated than @color(+饱和度)

desaturate(@color, 10%); // return a color 10% _less_ saturated than @color(-饱和度)

fadein(@color, 10%); // return a color 10% _less_ transparent than @color(-透明度)

fadeout(@color, 10%); // return a color 10% _more_ transparent than @color(+透明度)

spin(@color, 10); // return a color with a 10 degree larger in hue than @color(……)

spin(@color, -10); // return a color with a 10 degree smaller hue than @color()
Less

http://verekia.com/less-css/dont-read-less-css-tutorial-highly-addictive/attachment/less-css-8

四、预览效果:

preview

五、源代码:

.buttonbase(@bcolor:#ffffff,@border-radius:3px,@color:#FFFFFF){
//background: @bcolor;
background: -webkit-linear-gradient(@bcolor, darken(@bcolor,5%) 44%, darken(@bcolor,20%)) repeat scroll 0 0 transparent;
background: -moz-linear-gradient(@bcolor, darken(@bcolor,5%) 44%, darken(@bcolor,20%)) repeat scroll 0 0 transparent;
background: -ms-linear-gradient(@bcolor, darken(@bcolor,5%) 44%, darken(@bcolor,20%)) repeat scroll 0 0 transparent;
background: -o-linear-gradient(@bcolor, darken(@bcolor,5%) 44%, darken(@bcolor,20%)) repeat scroll 0 0 transparent;
border-color: darken(@bcolor,22%) darken(@bcolor,30%) darken(@bcolor,18%);
border-radius: @border-radius;
border-style: solid;
border-width: 1px;
box-shadow: 0 1px 0 0 lighten(@bcolor,10%) inset, 0 1px 2px rgba(0, 0, 0, 0.2);
color:@color;
font-family: arial,helvetica,sans-serif;
font-size: 14px;
font-weight: bold;
line-height: 1;
padding: 6px 16px 7px;
text-align: center;
text-decoration: none;
text-shadow: 0 -1px 0 #4865E4;
&:hover{
background: -webkit-linear-gradient(lighten(@bcolor,1%), darken(@bcolor,4.5%) 44%, darken(@bcolor,21%)) repeat scroll 0 0 transparent;
background: -moz-linear-gradient(lighten(@bcolor,1%), darken(@bcolor,4.5%) 44%, darken(@bcolor,21%)) repeat scroll 0 0 transparent;
background: -o-linear-gradient(lighten(@bcolor,1%), darken(@bcolor,4.5%) 44%, darken(@bcolor,21%)) repeat scroll 0 0 transparent;
background: -ms-linear-gradient(lighten(@bcolor,1%), darken(@bcolor,4.5%) 44%, darken(@bcolor,21%)) repeat scroll 0 0 transparent;
border: 1px solid darken(@bcolor,21%);
box-shadow: 0 1px 0 0 lighten(@bcolor,10%) inset, 0 1px 2px rgba(0, 0, 0, 0.3); &:active{
background: -webkit-linear-gradient(@bcolor, darken(@bcolor,4.8%) 44%, darken(@bcolor,20.5%)) repeat scroll 0 0 transparent;
background: -moz-linear-gradient(@bcolor, darken(@bcolor,4.8%) 44%, darken(@bcolor,20.5%)) repeat scroll 0 0 transparent;
background: -ms-linear-gradient(@bcolor, darken(@bcolor,4.8%) 44%, darken(@bcolor,20.5%)) repeat scroll 0 0 transparent;
background: -o-linear-gradient(@bcolor, darken(@bcolor,4.8%) 44%, darken(@bcolor,20.5%)) repeat scroll 0 0 transparent;
border-color: darken(@bcolor,23%) darken(@bcolor,28%) darken(@bcolor,19%);
border-left: 1px solid darken(@bcolor,25%);
border-right: 1px solid darken(@bcolor,25%);
border-style: solid;
border-width: 1px;
box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.1) inset;
}
}
} #green{
.buttonbase(#83C260,3px,#FFFFFF);
} #yellow {
.buttonbase(#ffc40d,3px,#FFFFFF);
} #blue {
.buttonbase(#049cdb,3px,#FFFFFF);
} #red {
.buttonbase(#9d261d,3px,#FFFFFF);
} #orange{
.buttonbase(#f89406,3px,#FFFFFF);
} #purple{
.buttonbase(#7a43b6,3px,#FFFFFF);
}
Less

代码阅读版:http://jsfiddle.net/Jf6Dg/

更加面向对象的版本(分离不需要重载的代码):http://jsfiddle.net/Jf6Dg/2/

在线生成试一试:
http://less.cnodejs.net/

六、 关于less的语法:

查看这里吧 http://www.lesscss.net/#docs

非原创,转自 https://blog.w3cub.com/blog/2012/02/28/less-and-linear-gradient/

关于lesscss和颜色梯度(linear-gradient )的一些问题的更多相关文章

  1. 图像处理------颜色梯度变化 (Color Gradient)

    有过UI设计经验的一定对2D图形渲染中的Color Gradient 或多或少有些接触,很多编程 语言也提供了Gradient的接口,但是想知道它是怎么实现的嘛? 本文介绍三种简单的颜色梯度变化算法, ...

  2. 机器学习(1)之梯度下降(gradient descent)

    机器学习(1)之梯度下降(gradient descent) 题记:最近零碎的时间都在学习Andrew Ng的machine learning,因此就有了这些笔记. 梯度下降是线性回归的一种(Line ...

  3. 梯度下降(Gradient Descent)小结 -2017.7.20

    在求解算法的模型函数时,常用到梯度下降(Gradient Descent)和最小二乘法,下面讨论梯度下降的线性模型(linear model). 1.问题引入 给定一组训练集合(training se ...

  4. 理解梯度下降法(Gradient Decent)

    1. 什么是梯度下降法?   梯度下降法(Gradient Decent)是一种常用的最优化方法,是求解无约束问题最古老也是最常用的方法之一.也被称之为最速下降法.梯度下降法在机器学习中十分常见,多用 ...

  5. 强化学习(十三) 策略梯度(Policy Gradient)

    在前面讲到的DQN系列强化学习算法中,我们主要对价值函数进行了近似表示,基于价值来学习.这种Value Based强化学习方法在很多领域都得到比较好的应用,但是Value Based强化学习方法也有很 ...

  6. 梯度下降(gradient descent)算法简介

    梯度下降法是一个最优化算法,通常也称为最速下降法.最速下降法是求解无约束优化问题最简单和最古老的方法之一,虽然现在已经不具有实用性,但是许多有效算法都是以它为基础进行改进和修正而得到的.最速下降法是用 ...

  7. R语言colorRampPalette函数-创建颜色梯度(渐变色)

    在绘热图时,需要将数值映射到不同的颜色上,这时就需要一系列的颜色梯度 colorRampPalette 函数支持自定义的创建一系列的颜色梯度 代码示例: > colors <- color ...

  8. [机器学习] ML重要概念:梯度(Gradient)与梯度下降法(Gradient Descent)

    引言 机器学习栏目记录我在学习Machine Learning过程的一些心得笔记,涵盖线性回归.逻辑回归.Softmax回归.神经网络和SVM等等,主要学习资料来自网上的免费课程和一些经典书籍,免费课 ...

  9. FCC---Create a Gradual CSS Linear Gradient

    Applied Visual Design: Create a Gradual CSS Linear Gradient background: linear-gradient(gradient_dir ...

  10. [论文阅读] 颜色迁移-Linear Monge-Kantorovitch(MKL)

    [论文阅读] 颜色迁移-Linear Monge-Kantorovitch(MKL) 文章: The Linear Monge-Kantorovitch Linear Colour Mapping f ...

随机推荐

  1. 一些开源软件的LOGO

    整理一些开源软件的logo或者吉祥物,主要是一些以动物形象为主的logo. 1. GNU,不是一个软件,而是一个软件组织,包括很多知名的软件例如GCC编译器. GNU的LOGO是一只牛. GCC的lo ...

  2. linux系统过滤ip地址总结

    Perl模块用法 安装Perl模块 # 官网地址 https://metacpan.org/pod/Regexp::Common # 下载地址 https://cpan.metacpan.org/au ...

  3. Dynamics 365 如何代表其他用户发送邮件

    举个例子,用户A和用户B,用户B在新建电子邮件时,发件人以用户A的身份去发送邮件,这个时候需要做如下配置才可以. 首先登录用户A,在高级设置->个人设置中,配置允许其他人代表自己发送电子邮件. ...

  4. AES可以加密成

    AES可以生成HEX的字符串如{[m9LJfF4fYtt+PGoAA5WmL+6RFh5oVvrlCQpVhLyk3l28XqS3D4Qd+ehOdvqLcUrFKcyBV3hygXHU3We33bY ...

  5. 实践:带您用多种姿势将存储在腾讯云COS 上的视频播放

    导语 随着5G时代的到来,短视频/直播行业开始流行,音视频逐渐成为信息传播中流量占比最大的部分.腾讯云对象存储(COS)作为可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务,早已不 ...

  6. TCP 协议之三次握手(一)

    (声明:本文是阅读此文的总结笔记) 面试中对于该知识点的考察频繁,一般作为面试的暖场问题,你能够答出多少,答得多深刻,条理多清晰,给面试官的印象真的很重要. 三次握手的过程 TCP是面向连接的,全双工 ...

  7. 【剑指Offer】【栈】包含min函数的栈

    题目:定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1)). A:因为包含了入栈和出栈的操作,存储最小数的变量不能单单只是一个int的变量,应该用一个辅 ...

  8. DHCP中继(cisco)

    DHCP中继(cisco) 要求:PC0.PC1和PC2的IP地址从DHCP-server里获取,并ping通PC3 IP地址规划表: 设备 接口 IP地址 Multilayer Switch0 Fa ...

  9. IDEA初步使用Maven

    Maven使用 Maven环境配置 下载maven,解压,放在一个没有中文的路径下 打开系统环境变量配置 添加MAVEN_HOME ,其路径为maven所在路径 E:\software\apache- ...

  10. cpu主频对网络传输性能的影响

    数据包长度是:2KB iperf的测试结果:3.2GHz的cpu能上40Gb/s, 2.1GHz的cpu只能到28Gb/s.