【前言】
HTML的局限性在于它只关心结构、语义、页面内容,而更好看的样式是还需要CSS来完成。下面就来认识一下CSS吧!
【了解】
1.CSS能达到什么效果?
可以让我们的网页更加丰富多彩,布局更加灵活自如。
2.CSS能做出什么贡献?
可以让HTML从样式中脱离,实现了HTML专注去做结构呈现,样式交给CSS。
3.引进CSS,我们想要什么样的结果?
让结构(html)与样式(CSS)相分离。
【内容】
1.什么是CSS?
CSS,Cascading Style Sheets,通常称为CSS样式表或层叠样式表(级联样式表)。
2.CSS作用
主要用于设置HTML页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、边距等)以及版面的布局和外观显示样式。
CSS以HTML为基础,提供了丰富的功能,如字体、颜色、北京的控制及整体排版等,而且还可以对不同的浏览器设置不同的样式。
3.引入CSS样式表,那么应该写在哪个位置呢?
按照书写位置,把CSS样式表分为3大类:
行内式(内联样式)、内部样式表(内嵌样式表)、外部样式表(外链式)
(1)行内式(内联样式)
又称为行内样式、行间样式,是通过标签的style属性来设置元素的样式。
语法如下:
<标签名 style=”属性1:属性值1; 属性2:属性值2; ”>内容</标签名>
例如:
<body>
<h1 style=”color: pink; ”>世纪佳缘,我也在这里等你</h1>
</body>
说明:
style就是标签的属性
样式属性和值中间是”:”
多组属性值之前用”;”隔开
只能控制当前的标签和以及嵌套在其中的字标签,造成代码冗余
缺点:
没有实现样式和结构相分离。
(2)内部样式表(内嵌样式表)
是将CSS代码集中写在HTML文档的head头部标签中,并且用style标签定义。
语法如下:
<head>
<style type="text/CSS">
选择器(选择的标签){
属性1:属性值1;
属性2:属性值2;
}
</style>
</head>
说明:
style标签一般位于head标签中,当然理论上可以放在html文档的任何地方。
type=”text/css”在html5中可以省略。
只能控制当前页面。
那如何实现结构与样式完全分离?如何实现css样式共享?要不要每次都写一遍呢?
(3)外部样式表(外链式)
又称为链入式,是将所有的样式放在一个或多个以.CSS为扩展名的外部样式表文件中,通过link标签将外部样式表文件链接到HTML文档中。
语法如下:
<head>
<link rel="stylesheet" type="text/css" href="css文件路径" />
</head>
说明:
link是个单标签
link标签需要放在head头部标签中,并且制定link标签的3个属性。
属性 |
作用 |
rel |
定义当前文档与被链接文档之间的关系,在这里需要制定为“stylesheet”,表示被链接的文档是一个样式表文件。 |
type |
定义所链接文档的类型,在这里需要制定为“text/CSS”,表示链接的外部文件为CSS样式表 |
href |
定义所链接外部样式表文件的URL,可以是相对路径,也可以是绝对路径。 |
(4)三种样式表总结
样式表 |
优点 |
缺点 |
使用情况 |
控制范围 |
行内样式表 |
书写方便,权重高 |
没有实现样式和结构相分离 |
较少 |
控制一个标签(少) |
内部样式表 |
部分结构和样式相分离 |
没有彻底分离 |
较多 |
控制一个页面(中) |
外部样式表 |
完全实现结构与样式相分离 |
需要引入 |
最多 |
控制整个站点(多) |
4.CSS样式规则
在使用HTML时,需要遵从一定的规范,那CSS也一样,想熟练地使用CSS对网页进行修饰,首先要了解CSS样式规则。
格式如下:
说明:
(1)选择器用于指定CSS样式作用的HTML标签,花括号内是对该对象设置的具体样式。
(2)属性和属性值以“键值对”的形式出现。
(3)属性是对指定的对象设置的样式属性,例如字体大小、文本颜色等。
(4)属性和属性值之间用英文“:”连接。
(5)多个“键值对”之间用英文“;”进行区分。
5.CSS选择器
作用:
选择标签用的,把我们想要的标签选择出来,换句话说,就是找到特定的HTML页面元素。
CSS分两件事,选对人,做对事。例如:
h3 {
color:red;
}
说明:这段代码就是2件事,把h3选出来,然后把它变成了红色。
选择器分类:
基础选择器和复合选择器。
6.基础选择器
(1)标签选择器
又称为元素选择器,是指用HTML标签名称作为选择器,按标签名称分类,为页面中某一类标签指定统一的CSS样式。
语法如下:
标签名{属性1:属性值1; 属性2:属性值2; 属性3:属性值3; }
作用:
标签选择器可以把某一类标签全部选择出来,比如所有的div标签和所有的span标签。
优点:
是能快速为页面中同类型的标签统一样式。
缺点:
不能涉及差异化样式。
(2)类选择器
类选择器使用“.”(英文点号)进行标识,后面紧跟类名。
语法如下:
类名选择器
.类名{
属性1: 属性值1;
属性2:属性值2;
}
标签
<p class="类名"></p>
优点:
可以为元素对象定义单独或相同的样式,可以选择一个或多个标签。
说明:
长名称或词组可以使用中横线来为选择器命名。
不要纯数字、中文等命名,尽量使用英文字符来表示。
类选择器特殊用法—多类名
可以给标签指定多个类名,从而达到更多的选择目的。
说明:
在一个标签内部只能有一个class,后边可以跟多个类名。
(3)id选择器
Id选择器使用#进行标识,后面紧跟id名。
语法如下:
id选择器
#id名 {属性1:属性值1; 属性2:属性值2; 属性3:属性值3; }
标签
<p id="id名"></p>
说明:
元素的id值是唯一的,只能对应于文档中某一具体的元素。
用法基本和类选择器相同。
id选择器和类选择器的区别:
id选择器和类选择器最大的不同在于使用次数上,即在同一个页面内,不允许有相同名字的id对象出现,但是允许相同名字的class。
(4)通配符选择器
通配符选择器用*号表示,就是选择所有的标签,它是所有选择器中作用范围最广的,能匹配页面中所有的元素。
语法如下:
* {属性1:属性值1; 属性2:属性值2; 属性3:属性值3; }
说明:
会匹配页面所有的元素,降低页面响应速度,不建议随便使用。
(5)基础选择器总结
选择器 |
作用 |
缺点 |
使用情况 |
用法 |
标签选择器 |
可以选出所有相同的标签,比如p |
不能差异化选择 |
较多 |
|
类选择器 |
可以选出1个或多个标签 |
可以根据需求选择 |
非常多 |
|
id选择器 |
一次只能选择1个标签 |
只能使用一次 |
不推荐使用 |
|
通配符选择器 |
选择所有的标签 |
选择的太多,有部分不需要 |
不推荐使用 |
7.CSS字体样式
属性 |
表示 |
注意点 |
font-size |
字号 |
通常用的单位视px像素。 |
font-family |
字体 |
实际工作中按团队约定来写字体 |
font-weight |
字体粗细 |
加粗是700或bold,不加粗是400或normal |
font-style |
字体样式 |
倾斜为italic,不倾斜是normal |
font |
字体连写 |
字体连写是有顺序的,不能随意交换位置,并且字号和字体必须同时出现 顺序:font: font-style font-weight font-size/line-height font-family |
8.CSS外观属性总结
属性 |
表示 |
注意点 |
color |
颜色 |
通常用十六进制表示,如#fff |
line-height |
行高 |
控制行与行之间的距离 |
text-align |
水平对齐 |
可以设定文字水平的对齐方式 |
text-indent |
首行缩进 |
用于段落首行缩进2个字的距离 text-indent:2em; |
text-decoration |
文本修饰 |
添加下划线underline,取消下划线none |