CSS3

发布时间 2023-06-11 22:46:15作者: 熊猫Panda先生

一、CSS简介

CSS是层叠样式表 ( Cascading Style Sheets ) 的简称。有时我们也会称之为CSS样式表或级联样式表。

CSS是也是一种标记语言主要用于设置 HTML 页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、边距等)以及版面的布局和外观显示样式。

CSS让我们的网页更加丰富多彩,布局更加灵活自如。

简单理解:CSS 可以美化 HTML , 让 HTML 更漂亮,让页面布局更简单。

CSS最大价值:由 HTML 专注去做结构呈现,样式交给 CSS,即 结构 ( HTML ) 与样式( CSS ) 相分离。

二、CSS语法规范

使用 HTML 时,需要遵从一定的规范,CSS 也是如此。要想熟练地使用 CSS 对网页进行修饰,首先需要了解CSS 样式规则。

CSS规则由两个主要的部分构成:选择器声明

  

1.选择器是用于指定CSS样式的HTML标签,花括号内是对该对象设置的具体样式

2.属性和属性值以“键值对”的形式出现

3.属性是对指定的对象设置的样式属性,例如字体大小、文本颜色等

4.属性和属性值之间用英文“:”分开

5.多个属性之间用英文“;”进行分割

6.当一个属性有多个属性值的时候,属性值与属性值不分先后顺序,用空格隔开

7.在书写样式过程中,空格、换行等操作不影响属性显示

8.不要在属性值与单位之间留有空格(如:font-size: 50  px),正确的写法是 font-size: 50px。

我们先举个例子

{
    眼睛 : 放大1厘米;
    鼻子 : 垫高1厘米;
    嘴巴 : 缩小1里面;
}

我们来看看在HTML中怎么写?

所有的样式,都包含在 <style> 标签内,表示是样式表。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <style>
            h1 {
                color : red;
            }
        </style>
        <h1>11111111111111111</h1>
        <h2>22222222222222222</h2>
        <h3>33333333333333333</h3>
    </body>
</html>

运行查看

CSS选择器的作用:选择器就是根据不同需求把不同的标签选出来,这就是选择器的作用。简单来说,就是选择标签用的。

我们在使用时要注意两点:

  • 找到所有的 h1 标签。 选择器(选对人)
  • 设置这些标签的样式,比如颜色为红色(做对事)。

三、CSS样式的位置

1、内部样式

当单个文档需要特殊的样式时,就应该使用内部样式表。可以使用 <style> 标签在文档头部<head>定义内部样式表。

2、外部样式

当样式需要应用于很多页面时,外部样式表将是理想的选择。

(1)单独定义一个CSS样式文件style.css

h1 {
    color: red;
}

(2)在每个用到样式的HTML页面中使用 <link> 标签链接到样式表。

<link> 标签在文档的头部<head>:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <link rel="stylesheet" href="./style.css"/>
    </head>
    <body>
        <h1>11111111111111111</h1>
        <h2>22222222222222222</h2>
        <h3>33333333333333333</h3>
    </body>
</html>

3、内联(行内)样式

由于要将表现和内容混杂在一起,内联(行内)样式会损失掉样式表的许多优势。

要使用内联样式,需要在相关的标签内使用样式(style)属性。style 属性可以包含任何 CSS 属性。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <h1 style="color: red;">11111111111111111</h1>
        <h2 style="color: blue;">22222222222222222</h2>
        <h3>33333333333333333</h3>
    </body>
</html>

这3种样式可以联合使用----多重样式。

多重样式优先级: 内联样式 > 内部样式 > 外部样式

另外,我们在联合使用这3种样式时,一般来说书写习惯:外部样式引入<link>在内部样式<style>前面。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <link rel="stylesheet" href="./style.css" />
        <style>
            h1 {
                color: yellow;
            }

            h3 {
                color: brown;
            }
        </style>
    </head>
    <body>
        <h1 style="color: green;">11111111111111111</h1>
        <h2 style="color: blue;">22222222222222222</h2>
        <h3>33333333333333333</h3>
    </body>
</html>

 

四、CSS基础选择器

基础选择器又包括:标签选择器、类选择器、id 选择器 和 通配符选择器。

1、标签选择器:

标签选择器(元素选择器)是指用 HTML 标签名称作为选择器,按标签名称分类,为页面中某一类标签指定统一的 CSS 样式。

语法: 标签选择器{ 属性:属性值 ... }

标签选择器 { 
    属性 :属性值 ... 
}

作用:标签选择器(元素选择器)是指用 HTML 标签名称作为选择器,按标签名称分类,为页面中某一类标签指定统一的 CSS 样式。

2、类选择器

如果想要差异化选择不同的标签,单独选一个或者某几个标签,可以使用类选择器。

语法:

.类名 { 
    属性1 : 属性值1;
    ...
}

(1)如果想要差异化选择不同的标签,单独选一个或者某几个标签,可以使用类选择器。

(2)类选择器在HTML中以class属性表示,在CSS中,类选择器以一个点“.”号显示。

(3)类选择器使用“.”(英文点号)进行标识,后面紧跟类名(自定义的)。

(4)类名可以理解为给这个标签起了一个名字。

(5)长名称或词组可以使用中横线来为选择器命名。

(6)不要使用纯数字、中文等命名,尽量使用英文字母来表示。

(7)命名要有意义,尽量使别人一眼就知道这个类名的目的。

多类名选择器

我们可以给一个标签指定多个类名,从而达到更多的选择目的。 这些类名都可以选出这个标签,简单理解就是一个标签有多个名字。

多类名的具体使用:

<div class="red font20">亚瑟</div>

注意:

(1)在标签class属性中写多个类名

(2)多个类名中间必须用空格分开

(3)这个标签就可以分别具有这些类名的样式

3.id选择器

id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式。

HTML 元素以 id 属性来设置 id 选择器,CSS 中 id 选择器以“#" 来定义。

语法:

#id名 {
    属性1: 属性值1;
    ... 
} 

注意:id属性只能在每个HTML文档中出现一次。

id选择器和类选择器的区别

(1)类选择器(class)好比人的名字,一个人可以有多个名字,同时一个名字也可以被多个人使用。

(2)id选择器好比人的身份证号码,全中国是唯一的,不得重复。

(3)id 选择器和类选择器最大的不同在于使用次数上。

(4)类选择器在修改样式中用的最多,id选择器一般用于页面唯一性的元素上,经常和JavaScript搭配使用。

4.通配符选择器

语法:

* { 
    属性1: 属性值1;
    ... 
}

通配符选择器不需要调用,自动就给所有的元素使用样式

一般只有一种特殊情况才使用,给所有的元素标签清除内外边距。

* { 
    margin: 0; 
    padding: 0; 
}

5.基础选择器总结

五、CSS字体属性

1、字体大小

CSS 使用 font-size 属性定义字体大小。

语法:

p { 
    font-size: 20px; 
}

(1)px(像素)大小是我们网页的最常用的单位

(2)谷歌浏览器默认的文字大小为16px

(3)不同浏览器可能默认显示的字号大小不一致,我们尽量给一个字号的明确值,不要用默认大小。

(4)可以给 body 指定整个页面文字的大小

2、字体粗细

CSS 使用 font-weight 属性设置文本字体的粗细。

语法: 

p { 
    font-weight: bold; 
}
  • normal:不加粗(默认值)
  • bold:加粗
  • 100~900:其中 400 等同于normal,700等同于bold,注意,这个数字后面不用跟单位。

(1)学会让加粗标签(比如 h 和 strong 等) 不加粗,或者其他标签加粗

(2)实际开发时,我们更喜欢用数字表示粗细

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <style>
            body {
                font-size: 16px;
                font-family: "宋体";
                font-weight: 400;
            }
            .title {
                font-size: 20px;
                font-family: "黑体", Arial, "微软雅黑", "Microsoft Yahei";
                font-weight: 700;
            }
        </style>
    </head>
    <body>
        <p class="title">静夜思</p>
        <p>床前明月光</p>
        <p>疑是地上霜</p>
        <p>举头望明月</p>
        <p>低头思故乡</p>
    </body>
</html>

3、字体样式

CSS 使用 font-style 属性设置文本的风格。
语法:

p {
    font-style: normal;
}
  • normal:标准字体样式(默认值)
  • italic:倾斜字体样式,对于没有斜体变量的特殊字体,将应用oblique 
  • oblique:倾斜的字体
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <style>
            body {
                font-size: 16px;
                font-family: "宋体";
                font-weight: 400;
                font-style: italic;
            }
            .title {
                font-size: 20px;
                font-family: "黑体", Arial, "微软雅黑", "Microsoft Yahei";
                font-weight: 700;
            }
        </style>
    </head>
    <body>
        <p class="title">静夜思</p>
        <p>床前明月光</p>
        <p>疑是地上霜</p>
        <p>举头望明月</p>
        <p>低头思故乡</p>
    </body>
</html>

4、字体的综合写法

字体属性可以把以上文字样式综合来写, 这样可以更节约代码:

body {
    font: font-style font-weight font-size/line-height font-family;
}

使用 font 属性时,必须按上面语法格式中的顺序书写,不能更换顺序,并且各个属性间以空格隔开,不需要设置的属性可以省略(取默认值),但必须保留 font-size 和 font-family 属性,否则 font 属性将不起作用。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <style>
            body {
                font: italic 400 16px "宋体"
            }

            .title {
                font: italic 700 20px "黑体"
            }
        </style>
    </head>
    <body>
        <p class="title">静夜思</p>
        <p>床前明月光</p>
        <p>疑是地上霜</p>
        <p>举头望明月</p>
        <p>低头思故乡</p>
    </body>
</html>

5、字体总结

 

五、层级选择器

1、子代选择器 (E>F) 

 

2、后代选择器 (E F )

 

3、交集选择器  (E.F)

 

4、并集选择器  (E,F)

 

 

 

六、属性选择器

 

七、伪类选择器