CSS简介及CSS 选择器
1.CSS 简介
CSS也是一种标记语言,它主要用于设置HTML页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、边框等)以及版面的布局和外观显示样式等。CSS的最大价值便是使结构(HTML)与样式(CSS)相分离
1.1 CSS语法规范
CSS规则由两个主要的部分构成,选择器以及一条或多条声明
(1)选择器是用于指定CSS样式的HTML标签,花括号内是对该对象设置的具体样式
(2)属性和属性值以”键值对“的形式出现
(3)属性是对指定的对象设置的样式属性,例如字体大小、文本颜色等
(4)属性和属性值之间由半角字符” : "分开
(5)每一组键值对之间用半角符号” ;“结尾
1.2 CSS代码风格
1.2.1 样式格式书写
(1)紧凑格式
<style>
h3 {color: deeppink;font-size: 20px}
</style>
(2)展开格式
<style>
h3 {
color: deeppink;
font-size: 20px;
}
</style>
//一般使用第二种(展开格式),更加直观,清晰
1.2.2 样式大小写
(1)小写
<style>
h3 {
color:pink;
}
</style>
(2)大写
<style>
H3 {
color:pink;
}
</style>
//推荐样式选择器、属性名、属性值、关键字全部使用小写,特殊情况除外
1.2.3 空格规范
<style>
h3 {
color: deeppink;
}
</style>
//在属性值前面,冒号后面,应保留一个空格
//选择器(标签)和大括号中间保留空格
2.CSS选择器
要使用CSS对HTML页面中的元素实现一对一,一对多或者多对一的控制,这就需要用到CSS选择器。
选择器就是选择标签用的。
选择器分为基础选择器和复合选择器两个大类,我们这里先讲解一下基础选择器。
- 基础选择器是由单个选择器组成的
- 基础选择器又包括:标签选择器、类选择器、id选择器和通配符选择器
2.1 标签选择器
标签选择器(元素选择器)是指用HTML标签名称作为选择器,按标签名称分类,为页面中某一类标签指定统一的CSS样式
<style>
标签名 {
属性1: 属性值1;
属性2: 属性值2;
}
</style>
作用: 标签选择器可以把某一类标签全部选择出来,比如所有的< div>标签和所有的< span>标签
优点: 能快速为页面中同类型的标签统一样式
缺点: 不能设计差异化样式,只能选择全部的当前标签
2.2 类选择器
如果想要差异化选择不同的标签,单独选一个或者某几个标签,可以使用类选择器
<style>
.类名 {
属性1: 属性值1;
}
</style>
……
<body>
<div class="类名">内容</div> //结构需要用class属性来调用class类的意思
</body>
注意:
类选择器使用 . (英文点号) 进行标识,后面紧跟类名(自定义的名字)
不要使用纯数字、中文等来给类命名,尽量使用英文字母来表示,较长的名字可以用中横线来命名。例如:star-sing
web前端开发有命名规范,可参考,不强制
2.3 类选择器
可以给一个标签指定多个类名,从而达到更多的选择的目的
<body>
<div class="类名1 类名2">内容</div>
</body>
注意:
多个类名中间必须用空格分开
这个标签可以分别具有这些类名的样式
可以把一些标签相同的样式 (共同的部分) 放到一个类里面
这些标签都可以调用这个公共的类,然后再调用自己独有的类,节省CSS代码,统一修改也非常方便
2.4 id选择器
id 选择器可以给标有特定 id 的 HTML 元素指定特定的样式
HTML 元素以 id属性 来设置id 选择器,CSS中 id 选择器 以# 来定义
<style>
#id名 {
属性1: 属性值1;
}
</style>
……
<body>
<div id="id名">内容</div>
</body>
注意:
id 属性只能在每个 HTML 文档中出现一次
口诀:样式#定义,结构id调用,只能调用一次,别人切勿使用
id选择器和类选择器的区别
- 类选择器 (class)好比人的名字,一个人可以有多个名字,同时一个名字也可以被多个人使用。
- id选择器好比人的身份证号码,全中国是唯一的,不得重复。
- d选择器和类选择器最大的不同在于使用次数上。
- 类选择器在修改样式中用的最多, id选择器般用于页面唯一性的元素上,经常和JavaScript搭配使用。
2.5 通配符选择器
通配符使用*定义,它表示选取页面中所有元素 (标签)
<style>
* {
属性1:属性值1;
}
</style>
注意:
通配符选择器不需要调用,自动就给所有的元素使用样式
经常用于清除元素标签的内外边距
<style>
* {
margin: 0;
padding: 0;
}
</style>
总结
3.字体属性
用于定义字体系列、大小、粗细和文字样式(如斜体)
3.1 font-family
设置文本的字体
<style>
p {
font-family: "微软雅黑";
}
div {
font-family: Arial, "Microsoft Yahe", "微软雅黑";
}
</style>
注意:
各种字体之间必须使用英文状态下的逗号隔开
一般情况下,如果有空格隔开的多个单词组成的字体,加引号
最常见的几个字体:
body {font-family: "Microsoft Yahe", tahoma, arial, "Hiragino Sans GB";}
3.2 font-size
设置字体大小
<style>
div {
font-size: 20px;
}
</style>
注意:
px (像素)大小是我们网页的最常用的单位
谷歌浏览器默认的文字大小为 16px
可以给body指定整个页面文字的大小,但注意标题标签比较特殊,需要单独指定大小
3.3 font-weight
设置字体的粗细
font-weight: normal | bold | bolder | lighter |number
<style>
h2 {
font-weight: 400;
/*等同于 font-weight: normal;*/
}
</style>
3.4 font-style
设置文字样式(文本风格)
<style>
em { //em本身就是倾斜效果
font-style: normal; //让倾斜的变得不倾斜
}
</style>
3.5 字体属性复合写法
<style>
div {
font-style: normal;
font-weight: 800;
font-size: 18px;
font-family: 'Microsoft yahe';
}
</style>
//字体复合属性可以把以上文字样式综合来写,这样写更节约代码
<style>
div {
font: italic 700 16px 'Microsoft yahe';
}
</style>
注意:
顺序:文字样式 文字粗细 文字大小 文字字体
使用font属性时,必须按照上面语法格式中的顺序书写,不能更换顺序,并且各个属性间以空格隔开
不需要设置的属性可以省略(取默认值),但必须保留font-size 和font-family属性,否则 font 属性将不起作用
总结
4.文本属性
CSS 文本属性可以设置文本的外观,比如文本颜色、对齐文本、装饰文本、文本缩进、行间距的等
4.1 color
设置文本的颜色
<style>
div {
color: blue;
}
</style>
//开发中用的最多的是十六进制的
4.2 text-align
设置文本内容的水平对齐方式
<style>
div {
text-align: center;
}
</style>
4.3 text-decoration
用于装饰文本,可以给文本添加下划线,删除线,上划线等
<style>
div {
text-decoration: none; //例如取消超链接的下划线
}
</style>
4.4 text-indent
用于指定文本的第一行缩进,通常是将段落的首行缩进
<style>
div {
text-indent: 18px;
}
span {
text-indent: 2em;
}
</style>
注意:
通过设置该水属性,所有元素的第一行都可以缩进一个给定的长度,甚至该长度可以是负值
em是一个相对单位,就是当前元素(font-size)1个文字的大小;如果当前元素没有设置大小,则会按照父元素的一个文字大小
4.5 line-height
用于设置行间的距离(行高),可以控制文字行与行之间的距离,包括上间距、文本高度、下间距
<style>
div {
line-height: 20px;
}
</style>
总结
5.CSS的引入方式
按照CSS样式书写的位置(或者引入的方式),CSS样式表可以分为以下三大类:
行内样式表(行内式)
内部样式表(嵌入式)
外部样式表(链接式)
5.1 行内样式表
行内样式表,也称为行内式引入,它是在元素标签内部的style属性中设定CSS样式,只适用于修改简单的样式
<div style="color: blue; font-size: 16px;">测试</div>
注意:
1.style是标签的属性
2.它可以控制当前的标签设置样式
5.2 内部样式表
内部样式表,通常也称嵌入式引入,它是把所有的CSS代码抽取出来,单独放在一个< style >标签中
<style>
div {
color: blue;
font-size: 16px;
}
</style>
注意:
1.<style>标签理论上可以放在HTML文档的任何地方,但一般都会放在文档的<head>标签中
2.通过这种方式,可以控制当前整个页面中的元素样式设置
5.3 外部样式表
实际开发都是外部样式表,适合于样式比较多的情况。核心是:样式单独写到CSS文件中,之后把CSS文件引入到HTML页面中使用。
引入外部样式表的步骤:
(1)新建一个后缀名为.css的样式文件,把所有CSS代码都放入此文件中
(2)在HTML页面中,使用< link >标签引入文件,具体引入代码如下所示:
<link rel="styleheet" href="css文件路径">
总结