欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

第 14 章 CSS 颜色与度量单位 - 水之原

程序员文章站 2022-05-23 20:26:49
...

学习要点:

1.颜色表方案

2.度量单位

主讲教师:李炎恢

本章主要探讨 HTML5 中 CSS 颜色和度量单位等问题,包括颜色的选取方式、相对长度和绝对长度等。

一.颜色表方案

颜色的表现形式主要有三种方式:颜色名称、十六进制代码和十进制代码。

p {
    color: red;
}

解释:这是将一个段落内的文字设置为红色,采用的是英文颜色名称。问题是,其他各种颜色我们将如何设置?

在古老的 HTML4 时,颜色名称只有 16 种。

颜色名称

十六进制代码

十进制代码

含义

black

#000000

0,0,0

黑色

silver

#c0c0c0

192,192,192

银灰色

gray

#808080

128,128,128

灰色

white

#ffffff

255,255,255

白色

maroon

#800000

128,0,0

栗色

red

#ff0000

255,0,0

红色

purple

#800080

128,0,128

紫色

fuchsia

#ff00ff

255,0,255

紫红

green

#008000

0,128,0

绿色

lime

#00ff00

0,255,0

闪光绿

olive

#808000

128,128,0

橄榄色

yellow

#ffff00

255,255,0

黄色

navy

#000080

0,0,128

海军蓝

blue

#0000ff

0,0,255

蓝色

teal

#008080

0,128,128

水鸭色

aqua

#00ffff

0,255,255

浅绿色

当然,目前颜色名称远远不止这些,可以搜索更多的 HTML 颜色表或 CSS 颜色表查阅。这里提供一些页面如下

http://xh.5156edu.com/page/z1015m9220j18754.html

http://finle.me/colors.html

http://www.w3school.com.cn/tags/html_ref_colornames.asp

在上面的表格中,我们也罗列出对应的十六进制和十进制颜色表示方法。使用方法如下:

//红色的十六进制方案

p {
    color: #ff0000;
}

十进制表示方法就比较多样化,有四种方案:

函数

说明

示例

rgb(r,g,b)

用 RGB 模型表示颜色

rgb(0,128,128)

rgba(r,g,b,a)

同上,a 表示透明度 0~1 之间

rgba(0,128,128,0.5)

hsl(h,s,l)

用 HSL 模型(色相、饱和度和透明度)来表示颜色

hsl(120,100%,30%)

hsla(h,s,l,a)

同上,a 表示透明度 0~1 之间

hsla(120,100%,30%,0.5)

p {
    color: rgb(112, 128, 114);
    color: rgba(0, 128, 128, 0.5);
    color: hsl(120, 100%, 30%);
    color: hsla(120, 100%, 30%, 0.5);
}

目前又有一个疑问,这些值从哪里获取。除了颜色表之外,想要微调自己的颜色值。我们可以使用 photoshop 等平面设计软件的调色板获取相应的值。

第 14 章 CSS 颜色与度量单位 - 水之原

二.度量单位

在 CSS 长度设置中,我们经常需要使用到度量单位,即以什么样的单位设计我们的字体或边框长度。而在 CSS 中长度单位又分为绝对长度和相对长度。

绝对长度指的是现实世界的度量单位,CSS 支持五种绝对长度单位。

绝对长度单位

单位标识符

说明

in

英寸

cm

厘米

mm

毫米

pt

pc

pica

相对长度指的是依托其他类型的单位,也是五种。

相对长度单位

单位标识符

说明

em

与元素字号挂钩

ex

与元素字体的“x 高度”挂钩

rem

与根元素的字号挂钩

px

像素,与分辨率挂钩

%

相对另一值的百分比

下面我们使用一些常用的单位作为演示,而不做演示的基本用不到了。

//em 相对单位

p {
    margin: 0;
    padding: 0;
    background: silver;
    font-size: 15px;
    height: 2em;
}

解释:em 是相对单位,与字号大小挂钩,会根据字体大小改变自己的大小,灵活性很高。

//px 相对单位,绝对特性

p {
    margin: 0;
    padding: 0;
    background: silver;
    font-size: 15px;
    height: 55px;
}

解释:虽然 px 也是相对单位,但由于和分辨率挂钩,导致他其实就变成一个绝对单位了,自然灵活性没有 em 高,但是使用难度较低,且大量的开发者习惯性使用它。

//%百分比

p {
    margin: 0;
    padding: 0;
    background: silver;
    font-size: 200%;
    width: 50%;
}

解释:长度比较好理解,就是挂钩它所在区块的宽度。而 font-size 则是继承到的原始大小的百分比。