前段入门之CSS二(CSS引入方式、CSS声明权重及优先性)

前段入门之CSS二

1 如何引入CSS?

1.1 行间样式

  在HTML元素开始标签中添加 style属性,属性值由分号隔开CSS声明构成。

<h1 style=color:red;text-align:center;>中间红色</h1>
<h2 style=color:green;text-align:center;>中间绿色</h2>

在这里插入图片描述

1.2 页面样式

  在HTML文档 <head>元素中加入 <style>元素,元素内容为CSS规则

<head>
    <style type="text/css">
        h1 {
            text-align: center;
            color:red;
        }
        h2{
            text-align:center;
            color:green;
        }
    </style>
</head>
<h1 >中间红色</h1>
<h2 >中间绿色</h2>

在这里插入图片描述

1.3 外部样式

   重新创建一个CSS文件,并在HTML文档 <head>元素中加入<link>元素。

/* waibu.css文件内容 */
h1 {
    text-align: center;
    color:red;
}
h2{
    text-align:center;
    color:green;
}
<head>
    <link rel="stylesheet" type="text/css" href="waibu.css">
</head>
<h1 >中间红色</h1>
<h2 >中间绿色</h2>

在这里插入图片描述

2 CSS声明权重及优先性

  当CSS声明有冲突时,如下面这个例子:

p{
    background-color: blue!important;
}
#idDiv p{
background-color: red;
}
#idDiv .classP{
background-color: yellow;
}
.classDiv .classP{
background-color: green;
}
<div class="classDiv" id="idDiv">
	<p class="classP" id="idP">
	123456789
	</p>
</div>
依次操作渲染结果
在这里插入图片描述
!important在这里插入图片描述
交换redyellow在这里插入图片描述
redyellow在这里插入图片描述

   元素选择器p与三个后代选择器#idDiv p#idDiv .classP.classDiv .classP同时对<p>元素的background-color的属性进行了声明。这时,浏览器内核会根据CSS声明的权重值进行渲染。

CSS声明选择器权重(256进制)
important声明任意infinity
行间样式1000
页面样式或外部样式
单个选择器id选择器100
属性选择器10
类选择器10
伪类选择器10
元素选择器1
伪元素选择器1
通用选择器0
复合选择器单个选择器权重之和
  根据上表,在这个例子中:

p的权重为( i m p o r t a n t important important声明):
i n f i n i t y infinity infinity
#idDiv p的权重为(id选择器+属性选择器):
100 + 10 = 110 100+10=110 100+10=110
#idDiv .classP的权重为(id选择器+类别选择器):
100 + 10 = 110 100+10=110 100+10=110
.classDiv .classP的权重为(类别选择器+类别选择器):
10 + 10 = 20 10+10=20 10+10=20
所以声明权重值background-color:blue>background-color:red=background-color:yellow>background-color:green

  所以,当CSS声明发生冲突时,浏览器渲染权值较高的声明,当冲突声明权值相同时,浏览器渲染靠后的声明


补充说明:
  • i m p o r t a n t important important声明:在一般CSS声明后加!important
  • 在电脑中, i n f i n i t y infinity infinity也是一个具体的值。


相关文章链接:
前段入门之CSS一 | 前段入门之CSS二| 前段入门之CSS三
前段入门之HTML一 | 前段入门之HTML二


本人由于之前用Flask&Dash框架快速开发数据分析Web APP 开始了解到前段工程师这个行业,并产生了一些兴趣,现在打算从头开始学习前段开发的一些知识,写博客来记录一下学习的过程。欢迎各位一起讨论学习,如有错误的地方或者建议,恳请在评论区批评和指导,博客不定期修改和更新。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

西红柿爱喝水

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值