博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
熟悉css/css3颜色属性
阅读量:5170 次
发布时间:2019-06-13

本文共 1595 字,大约阅读时间需要 5 分钟。

原文:

  颜色属性无处不在。字体要用颜色,背景可以有颜色,粒子特效更是离不开颜色。本文参考了一些资料简单总结下以备日后查阅。

  css中颜色的定义方式:

  1. 十六进制色
  2. RGB & RGBA
  3. HSL & HSLA
  4. 颜色名

十六进制色

  个人最喜欢的一种颜色表达方式。

  十六进制颜色是这样规定的:#RRGGBB,其中的RR(红色)、GG(绿色)、BB(蓝色)十六进制整数规定了颜色的成分。所有值必须介于 0 与 FF 之间。

  生成随机颜色:

function getRandomColor() {  return '#' + ('00000' + parseInt(Math.random() * 0xffffff).toString(16)).slice(-6);}

  猛戳查看具体颜色效果。

RGB和RGBA

  RGB 颜色值是这样规定的:rgb(red, green, blue)。每个参数 (red、green 以及 blue) 定义颜色的强度,可以是介于 0 与 255 之间的整数,或者是百分比值(从 0% 到 100%)。

  举例说,rgb(0,0,255) 值显示为蓝色,这是因为 blue 参数被设置为最高值(255),而其他被设置为 0。

  同样地,下面的值定义了相同的颜色:rgb(0,0,255) 和 rgb(0%,0%,100%)。

  RGBA 颜色值是 RGB 颜色值的扩展,带有一个 alpha 通道,它规定了对象的不透明度。

  RGBA 颜色值是这样规定的:rgba(red, green, blue, alpha)。alpha 参数是介于 0.0(完全透明)与 1.0(完全不透明)的数字。

  可以直观感受下RGBA:

      

  如果看不到控件效果,请用chrome打开~

HSL和HSLA

  HSL 指的是 hue(色调)、saturation(饱和度)、lightness(亮度)- 表示颜色柱面坐标表示法。

  HSL 颜色值是这样规定的:hsl(hue, saturation, lightness)。

  Hue 是色盘上的度数(从 0 到 360) - 0 (或 360) 是红色,120 是绿色,240 是蓝色。可以看下面这张图感受下:

  Saturation 是百分比值;0%表示的是一个灰度,不使用任何的色彩,而100%是全彩,表示充分使用一个颜色。

  Lightness 同样是百分比值;0% 是黑色,100%是白色。

  可以直观感受下HSL(看不到效果请用chrome): 

  HSLA 颜色值是 HSL 颜色值的扩展,带有一个 alpha 通道 - 它规定了对象的不透明度。

  HSLA 颜色值是这样规定的:hsla(hue, saturation, lightness, alpha),其中的 alpha 参数定义不透明度。alpha 参数是介于 0.0(完全透明)与 1.0(完全不透明)的数字。

  如果实际应用中我们需要让颜色变亮一点或者变暗一点,hsl是个不错的选择,比如说a:hover时颜色变亮,改变第三个参数值即可。

  利用hsl我们也能做一些动态的渐变效果,因为360颜色一循环。这个demo中的颜色就用了hsl()

颜色名

  就是white、black、red等等这样的啦,其实还有更多,可以参考

总结

  • 关于兼容:
  1. 十六进制色(所有浏览器兼容)
  2. RGB(所有浏览器兼容)
  3. RGBA(ie下用滤镜兼容)
  4. HSL(不兼容ie)
  5. HSLA(不兼容ie)
  6. 颜色名(所有浏览器兼容)
  • 参考资料:
posted on
2015-03-09 09:06 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/lonelyxmas/p/4322719.html

你可能感兴趣的文章
k8s pod
查看>>
PyTorch DataLoader
查看>>
k8s ReplicaSet
查看>>
Double binary trees
查看>>
k8s Deployment
查看>>
你所需要的只是注意力
查看>>
k8s Service
查看>>
kubeflow
查看>>
k8s Custom Resource
查看>>
BytePS源码解析
查看>>
【C++】非原创|统计代码覆盖率(一:C)
查看>>
JSP 获取Request 经常使用參数
查看>>
第三次作业
查看>>
c#使用 Newtonsoft.Json 将entity转json时,忽略为null的属性
查看>>
thinkphp5--多文件入口设置
查看>>
连接mysql数据库,创建用户模型
查看>>
关于正则表达式 \1 \2之类的问题
查看>>
DRL前沿之:Benchmarking Deep Reinforcement Learning for Continuous Control
查看>>
django uWSGI nginx搭建一个web服务器 确定可用
查看>>
3.4 数据更新
查看>>