前言
今天主要看一些基础CSS系统知识,不会详谈,大家需要的自行搜索。
关键字
全局关键字:inherit initial unset,即继承父类,默认样式,以及前两个的综合模式(可继承则继承;不可继承则原始属性)。
相对尺寸
em和rem的区别,rem的r是相对于root node,其他如vw、vh以及ch(一个字符)。
颜色
RGB和RGBa表示法以及他们对应的十六进制表示。
HSL是CSS3新增的,分别代表Hue(色相),Saturation(饱和度)以及Ligitness(明度),这么说不清楚,如果放个调色盘可能大家能懂。
字体
之前写过关于字体的入门文章,看这里,有一段话我至今记得仍然很清楚:
使用 tahoma 作为首选的西文字体,小字号下结构清晰端整、阅读辨识容易;
用户电脑未预装 tohoma,则选择 arial 作为替代的西文字体,覆盖 windows 和 MAC OS;
Hiragino Sans GB 为冬青黑体,首选的中文字体,保证了 MAC 用户的观看体验;
Windows 下没有预装冬青黑体,则使用 ‘\5b8b\4f53’ 宋体为替代的中文字体方案,小字号下有着不错的效果;
最后使用无衬线系列字体 sans-serif 结尾,保证旧版本操作系统用户能选中一款电脑预装的无衬线字体,向下兼容。
这是简单的字体设置方式。
对于font-face这个属性,我其实一直没有搞太清楚,首先这个名字你要搞清楚怎么翻译,不是字体脸,而是字型。
这个属性大多都能查到,不需要我们太过专注,这里贴一下iconfont的font-face:
@font-face {font-family: "iconfont";
src: url('iconfont.eot?t=1565320061289'); /* IE9 */
src: url('iconfont.eot?t=1565320061289#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAANC+pGGrd6J70ErRGEjHMXM9cwwDGaIx5+XaD0cKPew0TouF0AIeKr1K4vFI9F6tGJ5QQxs+foiEoiREHEJRD1jJT44KR+U8hgR4rGnfqLGxbVMX1Pav8DGP509wLDyNfbx7Yh39zTcjnDwKItqovnFurlXjJ/4qyjP155Sqd1N...(省略10000字)') format('woff2'),
url('iconfont.woff?t=1565320061289') format('woff'),
url('iconfont.ttf?t=1565320061289') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
url('iconfont.svg?t=1565320061289#iconfont') format('svg'); /* iOS 4.1- */
}
字重
关于font-weight,CSS规范中这样描述,每个数字对应的权重至少与前面有着相同的font-weight,也就是说对于不同的字体,也是存在100,200,300的权重是相同的。
字号
使用像素点作为字号确实能保持一直,但是并不是所有的浏览器都能够轻易的缩放像素值设定的文本,有的甚至都不能缩放,而且在诸如Iphone的移动设备中,由于屏幕的特殊性他们的实际字号会显得非常小,因此一般不推荐使用像素值设定字号。
字形
关于字形,有斜体(italic)和倾斜体(oblique)之分,很少有浏览器在不放大的情况下能够区分两者的不同。
关于font的简写方式,这里不做过多解读,简单的来说,font可以只设定五个值,前三个代表"font-weight",“font-size”,“font-variant”,他们的值和顺序可以不设定,默认为normal;但是后两个值必须是字号和字体族。
文本
关于text-indent,我们要知道回车换行并不能改变影响,只有元素的第一行才会出现缩进。
关于text-align,它控制元素中文本的对齐方式;line-height指的是行的基线之间的距离,与字号无关,它的值应该等于字体高度加上字体之上文本行的额外空间的高度。我们也称之为行距。注意的是这个值是指最小距离,实际距离可能要比该值大。