CSS3中Color的一些特性介绍


Posted in HTML / CSS onMay 27, 2012

1.CSS 简介
CSS(Cascading Style Sheets),我们都不陌生吧。特别是我们在开发web项目的时候,用的更是不亦乐乎。

可是,你知道吗?CSS(注意 也就是CSS1)是在1996年的时候产生的标准,也就是到现在时隔(2012-1996)差不多15年的历史。毕竟时间在一直的走嘛,现在CSS3也在使用中,不过需要注意的是,CSS3并非是W3C的一个标准,它现在依旧是草案(Working Draft)状态,而不是最终的稳定版---W3C推荐。

据目前所知,CSS3已经增加了40多种模块(Module),既然还是草案,所以以后就还有增加的可能。所以,用我们的祈祷吧,希望CSS3赶快成为标准。那个时候我们程序员才是解放的时候。

在这篇文章中,我们会讨论一下CSS3中新增的40多个模块中的一个模块----Color模块。Color模块,比其他的模块更加的稳定。事实上,在2011年6月的时候,它就已经成为了W3C的推荐了,也就是标准了。

这新的CSS3 Color特性包括 在传统的hex 和RGB 值中增加了HSL特性,也就是增加了Opacity(透明度)和Alpha channels。

2.HSL Colors
在我们传统开发web网页的时候,我们在使用下面的关键字来进行对HTML和CSS进行颜色的设定。

Color 关键字 (aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, orange, purple, red, silver, teal, white, and yellow)
Hexadecimal(16进制) 表示法
RGB (red,green,blue)表示法

比如,如下实例:

复制代码
代码如下:

.keyword { color: white; }//关键字表示法
.shorthex { color: #FFF; } //短的16进制表示法
.longhex { color: #FFFFFF; } //长16进制表示法
.rgb1 { color: rgb(255, 255, 255); } //rgb1 通过值
.rgb2 { color: rgb(100%, 100%, 100%); } //rgb2 通过百分比

对上面的表示,我们都不陌生。

那么,在CSS3中的HSL怎么表示以及是什么意思呢?

HSL格式:

.example { color: hsl([hue], [saturation], [light]); }用的也很简单:

.implemented { color: hsl(240, 50%, 80%); }
那这三个单词什么意思呢?

H(Hue)色调:0和360是红色,接近120的是绿色,240是蓝色。W3C提供了一些对H色调有用的值:Tables Of Hue andSaturation Values,当然也还有其他的工具可以生成Hue的值,比如下面提到的HSL Color Picker在线工具。

S(Saturation,饱和度)值是一个百分比:0%是灰度,100%饱和度最高

L(Lightness,亮度)值也是一个百分比:0%是最暗,50%均值,100%最亮。

HSL Color Picker是一个用来取HSL颜色的工具。界面如下:

CSS3中Color的一些特性介绍

HSL浏览器兼容性:

目前HSL和HSLA被Firefox、Google Chrome、和Safari浏览器较好的支持,而且不需要任何前缀修饰。

实例:

复制代码
代码如下:

#left { color: hsl(240, 0%, 50%); }
#center { color: hsl(240, 50%, 50%); }
#right { color: hsl(240, 100%, 50%); }

结果:

CSS3中Color的一些特性介绍

OK,那我们现在来调整一下:
OK,那我们现在来调整一下:

复制代码
代码如下:

#left { color: hsl(240, 100%, 0%); }
#center { color: hsl(240, 100%, 50%); }
#right { color: hsl(240, 100%, 100%); }

CSS3中Color的一些特性介绍

其实,也简单,说真的,我也不懂为什么要增加这种方增加颜色的方法。呵呵 不过也好,多一种方法把~。总归有好处的,不是吗?

Opacity(透明度) 和Gradients(渐变)
另外一个和颜色相关的CSS3属性是 Alpha 通道(channel)和Opacity(透明度)。基本上来说
作者:Lanny☆兰东才

HTML / CSS 相关文章推荐
CSS去掉A标签(链接)虚线框的方法
Apr 01 HTML / CSS
CSS3实现文本垂直排列的方法
Jul 10 HTML / CSS
canvas实现有递增动画的环形进度条的实现方法
Jul 10 HTML / CSS
分享全球十款超强HTML5开发工具
May 14 HTML / CSS
整理HTML5移动端开发的常用触摸事件
Apr 15 HTML / CSS
HTML5对比HTML4的主要改变和改进总结
May 27 HTML / CSS
常用的HTML5列表标签
Jun 20 HTML / CSS
HTML5中的拖放实现详解
Aug 23 HTML / CSS
canvas之自定义头像功能实现代码示例
Sep 29 HTML / CSS
详解基于canvas的视频遮罩插件
Jan 04 HTML / CSS
AmazeUI 评论列表的实现示例
Aug 13 HTML / CSS
巧用 -webkit-box-reflect 倒影实现各类动效(小结)
Apr 22 HTML / CSS
CSS3 简写animation
May 10 #HTML / CSS
CSS3转换功能transform主要属性值分析及实现分享
May 06 #HTML / CSS
分享CSS3中必须要知道的10个顶级命令
Apr 26 #HTML / CSS
CSS3结构性伪类选择器九种写法
Apr 18 #HTML / CSS
巧用CSS3 border实现图片遮罩效果代码
Apr 09 #HTML / CSS
时尚的CSS3进度条效果
Feb 22 #HTML / CSS
CSS3 选择器 伪类选择器介绍
Jan 21 #HTML / CSS
You might like
一个多文件上传的例子(原创)
2006/10/09 PHP
PHP文件注释标记及规范小结
2012/04/01 PHP
php模拟post提交数据的方法
2015/02/12 PHP
详解php魔术方法(Magic methods)的使用方法
2016/02/14 PHP
PHP 绘制网站登录首页图片验证码
2016/04/12 PHP
PHP rmdir()函数的用法总结
2019/07/02 PHP
Laravel框架创建路由的方法详解
2019/09/04 PHP
海量经典的jQuery插件集合
2010/01/12 Javascript
利用JS重写Cognos右键菜单的实现代码
2010/04/11 Javascript
Extjs4实现两个GridPanel之间数据拖拽功能具体方法
2013/11/21 Javascript
NodeJs的优势和适合开发的程序
2016/08/14 NodeJs
树结构之JavaScript
2017/01/24 Javascript
js自制图片放大镜功能
2017/01/24 Javascript
浅谈angular.js跨域post解决方案
2017/08/30 Javascript
微信小程序数据存储与取值详解
2018/01/30 Javascript
微信小程序之裁剪图片成圆形的实现代码
2018/10/11 Javascript
nodejs搭建本地服务器并访问文件操作示例
2019/05/11 NodeJs
vue实现select下拉显示隐藏功能
2019/09/30 Javascript
html2canvas属性和使用方法以及如何使用html2canvas将HTML内容写入Canvas生成图片
2020/01/12 Javascript
web.py在模板中输出美元符号的方法
2014/08/26 Python
python append、extend与insert的区别
2016/10/13 Python
pandas 根据列的值选取所有行的示例
2018/11/07 Python
python pygame模块编写飞机大战
2018/11/20 Python
python导入模块交叉引用的方法
2019/01/19 Python
十个Python练手的实战项目,学会这些Python就基本没问题了(推荐)
2019/04/26 Python
django之对FileField字段的upload_to的设定方法
2019/07/28 Python
Python接口测试get请求过程详解
2020/02/28 Python
解决Python中报错TypeError: must be str, not bytes问题
2020/04/07 Python
HTML5 实现图片上传预处理功能
2020/02/06 HTML / CSS
暇步士官网:Hush Puppies
2016/09/22 全球购物
DC Shoes俄罗斯官网:美国滑板鞋和服饰品牌
2020/08/19 全球购物
mysql_pconnect()和mysql_connect()有什么区别
2012/05/25 面试题
如何填写个人简历自我评价
2013/12/10 职场文书
C++程序员求职信
2014/05/07 职场文书
注册资产评估专业求职信
2014/07/16 职场文书
镇创先争优活动总结
2014/08/28 职场文书