#今天再来回锅下css3的一些知识点。
首先呢 大家要记住一点 css它是层叠样式表。
##好的,进入正题,先来讲一下css的几种样式:
###第一种引入方式:行间样式
<div style="width:88px;"></div>优点:可以直接作用于标签,不会影响到其他标签。有冲突的css样式,优先级最高。
缺点:不能重复使用。影响html文档。影响阅读体验。也不利于代码的维护。
###第二种引入方式:html文档内容引入:
<style type="text/css"></style>优点:在head标签内引入style区域,不会影响body标签结构,有点内容,样式分离的味道。
缺点:不能重复使用,优先级低于行间样式。
###第三种引入方式:外部引入方式:
<link/>优点:完全的内容,样式分离,可以和其它html文档共享css文件。
缺点:会发生一次请求,浏览器渲染html的时候,会请求样式。内部的样式就不会发生请求。
##然后,在说一下,css的几种选择器:
###id选择器
#nav特点:具有唯一性。
###class选择器
.nav特点:可以使用相同名字。
###标签选择器
a h1 p特点:能够决定这些特殊标签应该采用的相应的css样式。
###通配选择器
*特点:能够是给所有元素设置样式。
###层级选择器
.nav .list特点:可以选择特定元素或者元素组的后代
###群组选择器
.nav,.nav特点:使用群组选择器,将会大大的简化css代码,即提高了编码的效率,也减少了css文件的体积。
###伪类选择器
a:link链接未点击上去的状态
a:visited访问过的状态
a:hover悬浮的状态
a:active点击没有松开的状态###伪元素选择器
p::first特点:伪元素选择器不能跟任何元素派生选择器。
##小扩展:颜色值。
###1.关键词 直接使用的名字的颜色值称为命名颜色,css支持17种合法命名颜色。
color:aqua fuchsia lime olive red white black gray maroon orange silver yellow blue green navy purple teal(浏览器支持140种颜色)###2.16进制 6进制是设置颜色值的常用方式,将三个介于00-FF的十六进制数连接起来,若16进制的3组数各自成对,则可简写为3位。
color:#fff;###3.rgb 通过组合不同的红色、绿色、蓝色分量创造出的颜色成为RGB模式的颜色。显示器是由一个个像素构成,利用电子束来表现色彩。像素把光的三原色:红色(R)、绿色(G)、蓝色(B)组合起来。每像素包含8位元色彩的信息量,有0-255的256个单元,其中0是完全无光状态,255是最亮状态 ,若数值小于最小值0,则默认调整为0;若数值大小最大值255,则默认调整为255.
color:rgb(255,255,255)
###4.rgba (IE8-浏览器不支持) rgba模式是在RGB基础上增加了alpha通道,用来设置颜色的透明度,其中这个通道值的范围是0-1。0代表完全透明,1代表完全不透明
color:rgb(255,255,255,0.8)###5.hsl (扩展知识,实用性低)(IE8-浏览器不支持) HSL模式是通过对色调(H)、饱和度(S)、亮度(L)三个颜色通道的变化以及它们相互的叠加得到各式各样的颜色。HSL标准几乎可以包括人类视力所能感知的所有颜色.h:色调(hue)可以为任意整数。0(或360或-360)表示红色,60表示黄色,120表示绿色,180表示青色,240表示蓝色,300表示洋红(当h值大于360时,实际的值等于该值模360后的值).s:饱和度(saturation),就是指颜色的深浅度和鲜艳程度。取0-100%范围的值,其中0表示灰度(没有该颜色),100%表示饱和度最高(颜色最鲜艳).l:亮度(lightness),取0-100%范围的值,其中0表示最暗(黑色),100%表示最亮(白色)
###hsla (IE8-浏览器不支持)HSLA模式是HSL的扩展模式,在HSL的基础上增加一个透明通道alpha来设置透明度
hsla(<length>,<percentage>,<percentage>,<opacity>)
##再说一下单位
###1.px 具体单位 具体到像素
width:100px###2.100% 百分比 根据父级
width:100%###3.em 单位被定义为当前字体大小 根据body
<body> <div></div> </body>
body{width:100px} div{width:1.2em}所以div的宽度应该是120px;###4.rem 基于根元素html进行设置
<html> <div></div> </html>body{font-size:10px} div{font-size:1.2em}`所以div的font-size应该是12px;
###5.vh和vw (扩展知识)视窗单位 vh等于viewport高度的1/100.例如,如果浏览器的高是900px,1vh求得的值为9px。同理,如果显示窗口宽度为750px,1vw求得的值为7.5px。
##基线、底线、顶线

行高指的是文本行的基线间的距离。
基线并不是汉字的下端沿,而是英文字母”x”的下端沿
##行距、行高

##font字体
font:italic bold 12px/20px arial,sans-serif;font简写顺序:font-style,font-variant,font-weight,font-size/line-height,font-family;
(扩展知识)字体是文字的外在形式,就是文字的风格,是文字的外衣。比如行书、楷书、草书,都是一种字体。同样一个字每个人写起来都会有差异,可以说每个人都有一套潜在的字体库。对于web页面来说,字体就是计算机上存储的一套文字显示方式。通过对文字进行一些特殊处理(比如末端加强)来提高不同环境中文字的可读性。
比如同样大小的文字,在不同字体下的可读性是不同的。
