第六十九节,css入门基础

css入门基础

学习要点:

1.使用CSS

2.三种方式

3.层叠和继承

本章主要探讨HTML5中CSS (层叠样式表),它是用来对HTML文档外观的表现形式进行排版和格式化。

一 使用CSS

CSS样式由一条或多条以分号隔开的样式声明组成。每条声明的样式包含着一个CSS属性和属性值。

<p >这是一段文本</p> 

解释:style是行内样式属性。color是颜色属性,red是颜色属性值;font-size 是字体大小属性,50px是字体大小属性值。

二 有三种使用方式

创建CSS样式表有三种方式:1.元素内嵌样式;2.文档内嵌样式;3.外部引入样式。

1.元素内嵌样式

<p >这是一段文本</p> 

解释:即在当前元素使用style属性的声明方式。

2.文档内嵌样式

<!DOCTYPE html>
<html >
<head>
    <!--定义文档的编码类型-->
    <meta charset="utf-8">
    <title>标题</title>
    <!--css样式控制p标签-->
    <style type="text/css">
        p{
            color: blue;
            font-size: 40px;
        }
    </style>
</head>
<body>
<p>这是一段文本</p>
</body>
</html>

解释:在<head>元素之间创建<style>元素,通过选择器的方式调用指定的元素并设置相关CSS。

3.外部引用样式

html文件

<!DOCTYPE html>
<html >
<head>
    <!--定义文档的编码类型-->
    <meta charset="utf-8">
    <title>标题</title>
    <!--外部引用css样式控制p标签-->
    <link rel="stylesheet"type="text/css" href="1.css">
</head>
<body>
<p>这是一段文本</p>
</body>
</html>

css文件

@charset "utf-8";
p{
    color: #ff272d;
    font-size: 40px;
}

解释:很多时候,大量的HTML页面使用了同一个组CSS。那么就可以将这些CSS样式保存在一个单独的.css文件中,然后通过<link>元素去引入它即可。@charset "utf-8"表明设置CSS的字符编码,如果不写默认就是utf-8。如果有多个.css文件,可以使用@import导入方式引入.css文件。只不过,性能不如多个<link>链接。

在一个css文件里导入另外一个css文件,不推荐,性能不如在html页面多个<link>链接

@charset "utf-8";
/*导入另外一个css文件*/
@import "2.css";
p{
    color: #ff272d;
    font-size: 40px;
}

三 层叠和继承

所谓的样式表层叠:指的是同一个元素通过不同方式设置样式表产生的样式重叠。样式表继承:指的是某一个被嵌套的元素得到它父元素样式。还有一种样式叫浏览器样式,是这个元素在这个浏览器运行时默认附加的样式。

1.浏览器样式

<b>这个元素隐含加粗样式</b>
<span >这个元素通过style加粗</span>

解释:如<b>元素就是具有加粗的隐含样式,而<span>元素没有任何隐含样式,通过style属性设置样式。

2.样式表层叠优先级

样式表层叠通过四种方式进行,如果样式相同,那么比如会产生冲突替换。这时,它的优先级顺序就显的比较重要。以下优先级从低到高:

(1).浏览器样式(元素自身携带的样式);优先级4最低

(2).外部引入样式(使用<link>引入的样式); 优先级3

(3).文档内嵌样式(使用<style>元素设置);优先级2

(4).元素内嵌样式(使用style属性设置)。优先级1最高

元素内嵌,优先级1最高

<p >我将被三种方式叠加样式</p>

文档内嵌 ,优先级2

<style type="text/css"> 
p 
color:blue; 
font-weight: bold; 
} 
</style>

外部引入 ,优先级3

@charset "utf-8"; 
p 
color: green;

font-style: italic; 
}

如果某一个样式被优先级高的给替换掉了,却又想执行这个样式方案,可以将这个方案标记成重要样式(important),强行设置最高优先级。

强行设置最高优先级

color: green !important;

3.样式继承

如果某一个元素并没有设置父元素相关的样式,那么就会使用继承机制将父元素的样式集成下来。

<b>元素继承了<p>元素的样式

<p >这是<b>HTML5</b></p>

样式继承只适用于元素的外观(文字、颜色、字体等),而元素在页面上的布局样式则不会被继承。如果继承布局样式,就必须使用强制继承:inherit。

强制继承布局样式

<style type="text/css">
p{     border: 1px solid red;   }   b{     border :inherit;   }
</style>
<p>这是<b>HTML5</b></p>