分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

CSS权重

发布时间:2023-09-06 02:04责任编辑:彭小芳关键词:CSS

原文

  简书原文:https://www.jianshu.com/p/b083556e7968

大纲

  1、CSS层叠
  2、CSS权重
  3、权重等级
  4、权重的规则
  5、!important

1、CSS层叠

  CSS全称:层叠样式表 (Cascading Style Sheets),有层级的、相互叠加的样式。
    1、找到所有作用于元素和属性的声明
    2、一个样式是否作用于元素依赖于这个样式的权重以及样式来源的顺序
  说明:来源的顺序:这个样式来源于行内样式、还是外部引入样式亦或者是浏览器默认的样式

2、CSS权重

  权重决定了你css规则怎样被浏览器解析直到生效。“css权重关系到你的css规则是怎样显示的”。
  当很多的规则被应用到某一个元素上时,权重是一个决定哪种规则生效,或者是优先级的过程。
  每个选择器都有自己的权重。你的每条css规则,都包含一个权重级别。 这个级别是由不同的选择器加权计算的,通过权重,不同的样式最终会作用到你的网页中 。
  如果两个选择器同时作用到一个元素上,权重高者生效。
  权重的不同,是你所期望的效果,没有通过css规则在元素上生效的主要原因。
  权重的级别根据选择器被划分为四个分类:行内样式,id,类与属性,以及元素。
  如果两个选择器权重值相同,则最后定义的规则被计算到权重中(后面定度的CSS规则权重要更大,会取代前面的CSS规则)。
  如果一条规则包含了更高权重的选择器,那么这个规则权重更高。
  内联样式表含有比别的规则更高的权重。

3、权重等级

  每个选择器在权重级别中都有自己泾渭分明的位置。根据选择器种类的不同可以分为四类,也决定了四种不同等级的权重值。
  从0开始,一个行内样式+1000,一个id+100,一个属性选择器/class或者伪类+10,一个元素名,或者伪元素+1.

4、权重的规则

  1、相同的权重:以后面出现的选择器为最后规则:
    假如在外部样式表中,同一个CSS规则你写了两次,那么出现在前面的选择器权重低,你的样式会选择后面的样式

#content h1 { ?padding: 5px;}#content h1 { ?padding: 10px;}/* ???两个选择器的权重都是0,1,0,1,最后那个规则生效。*/

  2、不同的权重,权重值高则生效
    选择器可能会包含一个或者多个与权重相关的计算点,若经过计算得到的权重值越大,则认为这个选择器的权重高。
  3、如果两个选择器权重值相同,则最后定义的规则被计算到权重中(后面定度的CSS规则权重要更大,会取代前面的CSS规则)

5、!important

  !important是CSS1就定义的语法,作用是提高指定样式规则的应用优先权。语法格式{ cssRule !important }。
  应当注意的是!important是对整条样式的声明,包括这个样式的属性和属性值。
  非到万不得已不要用!important。

参考网址

  https://www.w3cplus.com/css/the-important-css-declaration-how-and-when-to-use-it.html

  https://www.w3cplus.com/css/css-specificity-things-you-should-know.html

CSS权重

原文地址:https://www.cnblogs.com/shcrk/p/9307826.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved