前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >css三大特性(继承 层叠 优先 !important; 权重)

css三大特性(继承 层叠 优先 !important; 权重)

作者头像
贵哥的编程之路
发布2020-10-28 10:35:46
5290
发布2020-10-28 10:35:46
举报

继承:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Document</title>
	<style>
		div
		{
			color: red;
			text-decoration: none;
			font-size: 30px;
		}
	</style>
</head>
<body>
	<div>
    <p>我是段落</p>
</div>

<div>
    <ul>
        <li>
            <p>我是段落</p>
        </li>
    </ul>
</div>

<div>
    <a href="#">我是超链接</a>
</div>

<div>
    <h1>我是大标题</h1>
</div>
</body>
</html>

核心:<!– 1.什么是继承性? 作用: 给父元素设置一些属性, 子元素也可以使用, 这个我们就称之为继承性

注意点: 1.并不是所有的属性都可以继承, 只有以color/font-/text-/line-开头的属性才可以继承 2.在CSS的继承中不仅仅是儿子可以继承, 只要是后代都可以继承 3.继承性中的特殊性 3.1a标签的文字颜色和下划线是不能继承的 3.2h标签的文字大小是不能继承的

应用场景: 一般用于设置网页上的一些共性信息, 例如网页的文字颜色, 字体,文字大小等内容 body{} –>

在这里插入图片描述
在这里插入图片描述

层叠:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Document</title>
	 <style>
        p{
            color: red;
        }
        .para{
            color: blue;
        }
    </style>
</head>
<body>
	<p id="identity" class="para">我是段落</p>

</body>
</html>

核心:不懂我只懂覆盖。

在这里插入图片描述
在这里插入图片描述

优先:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Document</title>
	<style>
		#identity{
            color: purple;
        }
        .para{
            color: pink;
        }
        p{
            color: green;
        }
        *{
            color: blue;
        }
        li{
            color: red;
        }
	</style>
</head>
<body>
	<ul>
    <li>
        <p id="identity" class="para">我是段落</p>
    </li>
</ul>
</body>
</html>
在这里插入图片描述
在这里插入图片描述

核心: 2.优先级判断的三种方式 2.1间接选中就是指继承 如果是间接选中, 那么就是谁离目标标签比较近就听谁的 2.2相同选择器(直接选中) 如果都是直接选中, 并且都是同类型的选择器, 那么就是谁写在后面就听谁的 2.3不同选择器(直接选中) 如果都是直接选中, 并且不是相同类型的选择器, 那么就会按照选择器的优先级来层叠 id>类>标签>通配符>继承>浏览器默认 –>

优先级之important:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Document</title>
	<style type="text/css">
		#identity{
            color: purple;
            font-size: 50px;
        }
        .para{
            color: pink ;
        }
        p{
            color: green;
        }
        *{
            color: blue !important;
            font-size:10px;
        }
        li{
            color: red ;
        }
        .q
        {
        	color: yellow !important;
        }
        #cyg
        {
        	color: red;
        }
	</style>
</head>
<body>
	<ul>
    <li>
        <p id="identity" class="para">我是段落</p>
        <p id="cyg" class="q">我是段落</p>
    </li>
</ul>
</body>
</html>

权重:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>28-优先级之权重问题</title>
    <style>
        /*
        #identity1 .box2{
            color: red;
        }
        .box1 .box2{
            color: green;
        }
        div ul li p{
            color: blue;
        }
        */
        /*
        .box1 .box2{
            color: blue;
        }
        div .box2{
            color: green;
        }
        */
        /*
        #identity1 ul li p{
            color: red;
        }
        #identity1 ul p{
            color: green;
        }
        */
        /*
        .box1 li #identity2{
            color: blue;
        }

        #identity1 ul .box2{
            color: red;
        }
        */

        .box2{
            color: red;
        }
        li{
            color: blue;
        }
    </style>
</head>
<body>
<!--
1.什么是优先级的权重?
作用: 当多个选择器混合在一起使用时, 我们可以通过计算权重来判断谁的优先级最高

2.权重的计算规则
2.1首先先计算选择器中有多少个id, id多的选择器优先级最高
2.2如果id的个数一样, 那么再看类名的个数, 类名个数多的优先级最高
2.3如果类名的个数一样, 那么再看标签名称的个数, 标签名称个数多的优先级最高
2.4如果id个数一样, 类名个数也一样, 标签名称个数也一样, 那么就不会继续往下计算了, 那么此时谁写在后面听谁的
也就是说优先级如果一样, 那么谁写在后面听谁的

注意点:
1.只有选择器是直接选中标签的才需要计算权重, 否则一定会听直接选中的选择器的
-->

<div id="identity1" class="box1">
    <ul>
        <li>
            <p id="identity2" class="box2">我是段落</p>
        </li>
    </ul>
</div>
</body>
</html>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-08-29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档