1.css概述:主要用于设置HTML页面中的文本内容、排版布局等外观显示样式,使页面更加美观。
2.css样式规则
(1)具体格式:选择题{属性1:属性值1;属性2:属性值2;属性3:属性值3;}
(2)css代码结构中的特定:
a.css样式中的选择器严格区分大小写,属性和值不区分大小写,一般将“选择器、属性和值”都采用小写的方式。
b.在css代码中空格是不被解析的。
3.引入css样式表
(1)行内式(通过标记的style属性来设置元素的样式)
基本语法格式:<标记名 style=“属性1:属性值1;属性2:属性值2;属性3:属性值3;”>内容</标记名>
(2)内嵌式(将css代码集中写在写在HTML文档的<head>
头部标记中,并且用<style>
标记定义)
基本语法格式如下:
<head>
<style type="text/css">
选择器{
属性1:属性值1;属性2:属性值2;属性3:属性值3;}
</style>
</head>
注:<style>
标记一般位于<head>
标记中<title>
标记之后,也可以把它放在HTML文档的任何地方。
(3)链入式(将所有的样式放在一个或多个以css为拓展名的外部样式表文件中,通过标记将外部样式表文件链接到HTML文档中)
基本语法格式如下:
<head>
<link href="css文件的路径" type="text/css" rel="stylesheet"/>
</head>
注:a.<link/>
标记需要放在<head>
头部标记中,并且必须指定<link/>
标记的三个属性。
属性1 href:定义所链接外部样式表文件的URL。
属性2 type:定义所链接文档的类型,需要指定为"text/css"。
属性3 rel:定义当前文档与被链接文档之间的关系,在这里需要指定为"stylesheet"。
4.css选择器
(1)标记选择器(指用HTML标记名称作为选择器,按标记名称分类。)
基本语法格式:标记名{属性1:属性值1;属性2:属性值2;属性3:属性值3;}
(2)类选择器(使用"."进行标识,后面紧跟类名)
基本语法格式:.类名{属性1:属性值1;属性2:属性值2;属性3:属性值3;}
注:a.类名为HTML元素的class属性值。
b.最大优势是可以为元素对象定义单独或相同的样式。
(3)id选择器(使用"#"标识,后面紧跟id名)
基本语法格式:#id名{属性1:属性值1;属性2:属性值2;属性3:属性值3;}
注:a.id名为HTML元素的id属性值。
b.元素的id值是唯一的,只能对应于文档中某一个具体的元素。
(4)通配符选择器(它是用"*"表示,它是所有选择器中作用范围最广的,能匹配页面中所有的元素)
基本语法格式:*{属性1:属性值1;属性2:属性值2;属性3:属性值3;}
注:使用通配符选择器定义css样式,清除所有HTML标记的默认边距。
(5)标签指定式选择器(又称交集选择器,由两个选择器构成,其中第一个为标记选择器,第二个为class选择器或id选择器)
注:两个选择器之间不能有空格。
(6)后代选择器(用来选择元素或元素组的后代)
写法:把外层标记写在前面,内层标记写在后面,中间用空格分隔。
当标记发生嵌套时,内层标记就成为外层标记的后代。
(7)并集选择器(各个选择器通过逗号连接而成,任何形式的选择器都可以作为并集选择器的一部分)
(8)属性选择器:a.E[att^=value]属性选择器 b.E[att$=value]属性选择器 c.E[att*=value]属性选择器
(9)子代选择器(">" 主要用来选择某个元素的第一级元素)
例如希望选择只作为h1元素子元素的strong元素,可以这样写:h1>strong
(10)兄弟选择器(用来选择与某元素位于同一父元素之中,且位于该元素之后的兄弟元素)
a.临近兄弟选择器:使用"+"来链接前后两个选择器,选择器中的两个元素有同一个父亲,而且第二个元素必须紧跟第一个元素。
b.普通兄弟选择器:使用"~"来链接前后两个选择器,选择器中的两个元素有同一个父亲,但第二个元素不必紧跟第一个元素。
(11)结构化伪类选择器:root选择器、not选择器、only-child选择器、first-child选择器、last-child选择器、nth-child(n)选择器、nth-last-child(n)选择器、nth-of-type(n)选择器、nth-last-of-type(n)选择器、empty选择器、target选择器
(12)伪元素选择器:before选择器、after选择器
5.字体样式属性
(1)font-size:字号大小(可使用相对长度单位,也可以使用绝对长度单位)
(2)font-family:字体
可以同时指定多个字体,中间以逗号隔开,表示如果浏览器不支持第一个字体,则会尝试下一个,直到找到合适的字体。例如:
body{font-family:“华文彩云”,“宋体”,“黑体”;}
注:a.各种字体之间必须使用英文状态下的逗号隔开。
b.中文字体需要加英文状态下的引号,英文字体一般不需要加引号。当需要设置英文字体时,英文字体名必须位于中文字体名之前。
(3)font-weight:字体粗细
(4)font-style:字体风格
a.normal:默认值,浏览器会显示标准的字体样式。
b.italic:浏览器会显示斜体的字体样式。
c.oblique:浏览器会显示倾斜的字体样式。
(5)font:综合设置字体样式
基本语法格式:选择器{font:font-style font-variant font-weight/line-height font-family;}
注:使用font属性时,必须按上面语法格式中的顺序书写,各个属性以空格隔开。
(6)@font-face属性(用于定义服务器字体)
(7)word-wrap属性(用于实现长单词和URL地址的自动换行)
基本语法格式:选择器{word-wrap:属性值;}
6.文本外观属性
(1)color:文本颜色
(2)letter-spacing:字间距(字符与字符之间的空白)
其属性值可为不同单位的数值,允许使用负值,默认为normal。
(3)word-spacing:单词间距(定义英文单词之间的间距)
(4)line-height:行间距(行与行之间的距离,即字符的垂直间距)
(5)text-transform:文本控制(用于控制英文字符的大小写)
属性值如下:a.none:不转换
b.capitalize:首字母大写
c.uppercase:全部字符转换为大写
d.lowercase:全部字符转换为小写
(6)text-decoration:文本装饰(用于设置文本的下划线,上划线,删除线)
属性值如下:a.none:没有装饰
b.underline:下划线
c.overline:上划线
d.line-through:删除线
(7)text-align:水平对齐方式
(8)text-indent:首行缩进
(9)white-space:空白符处理
(10)text-shadow:阴影效果
a.h-shadow:用于设置水平阴影的距离
b.v-shadow:用于设置垂直阴影的距离
c.blur:用于设置模糊半径
d.color:用于设置阴影颜色
(11)text-overflow:标示对象内溢出文本
7.css层叠性与继承性
(1)层叠性(指css样式的叠加)
(2)继承性(指书写css样式表时,子标记会继承父标记的某些样式)
并不是所有的css属性都可以继承,下面的属性就不具有继承性:
a.边框属性
b.外边距属性
c.内边距属性
d.背景属性
e.定位属性
f.布局属性
g.元素宽高属性
8.css优先级
(1)标记选择器具有权重1,类选择器具有权重10,id选择器具有权重100。
(2)继承样式的权重为0。(在嵌套结构中,不管父元素样式的权重多大,被子元素继承时,它的权重都为0)
(3)行内样式优先。
(4)权重相同时,css遵循就近原则。
(5)css定义了一个!important命令,该命令被赋予最大的优先级。
9.链接伪类(可以实现不同的链接状态)
超链接标记的伪类:
1)a.link{css样式规则;}表示未访问时超链接的状态
2)a.visited{css样式规则;}表示访问后超链接的状态
3)a.hover{css样式规则;}表示鼠标经过、悬停时超链接的状态
4)a.active{css样式规则;}表示鼠标点击不动时超链接的状态