博客
关于我
CSS 优先级计算方法
阅读量:89 次
发布时间:2019-02-26

本文共 657 字,大约阅读时间需要 2 分钟。

CSS选择器的优先级规则是基于特定的权重计算公式来确定的。这些规则帮助开发者理解不同选择器之间的冲突规则,从而正确应用样式。

选择器优先级规则

CSS选择器的优先级由以下规则决定:

  • 内联样式:拥有内联样式的元素会覆盖所有其他样式,除非被!important标记。
  • ID选择器:每一个ID选择器的权重为{0,1,0,0}。多个ID选择器会叠加。
  • 类、属性和伪类选择器:每一个类、属性或伪类选择器的权重为{0,0,1,0}。
  • 标签和伪元素选择器:每一个标签或伪元素选择器的权重为{0,0,0,1}。
  • *选择器或继承样式:默认为{0,0,0,0},除非被!important标记。
  • 权重计算公式

    权重计算公式由四个数字组成,表示为{A,B,C,D},权重从左到右依次减小。

    • A:表示内联样式或!important标记,值为1或无穷大。
    • B:表示ID选择器的数量,值从0开始递增。
    • C:表示类、属性或伪类选择器的数量,值从0开始递增。
    • D:表示标签或伪元素选择器的数量,值从0开始递增。

    优先级比较

    比较优先级时,应从A开始逐步比较,直到找到最大的值即可。

    示例解析

    以下是几个常见选择器的权重计算:

  • div ul li:{0,0,0,3}
  • .nav ul li:{0,0,1,2}
  • a:hover:{0,0,1,1}
  • #box .nav a:{0,1,1,1}
  • 优先级比较结果

    根据权重计算公式,优先级顺序为:④ > ② > ③ > ①。

    这种方法帮助开发者准确理解和应用CSS选择器规则,确保样式在浏览器中的正确应用。

    转载地址:http://ldsu.baihongyu.com/

    你可能感兴趣的文章
    No 'Access-Control-Allow-Origin' header is present on the requested resource.
    查看>>
    NO 157 去掉禅道访问地址中的zentao
    查看>>
    No Datastore Session bound to thread, and configuration does not allow creation of non-transactional
    查看>>
    No fallbackFactory instance of type class com.ruoyi---SpringCloud Alibaba_若依微服务框架改造---工作笔记005
    查看>>
    No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalanc
    查看>>
    No mapping found for HTTP request with URI [/...] in DispatcherServlet with name ...的解决方法
    查看>>
    No mapping found for HTTP request with URI [/logout.do] in DispatcherServlet with name 'springmvc'
    查看>>
    No module named 'crispy_forms'等使用pycharm开发
    查看>>
    No module named cv2
    查看>>
    No module named tensorboard.main在安装tensorboardX的时候遇到的问题
    查看>>
    No module named ‘MySQLdb‘错误解决No module named ‘MySQLdb‘错误解决
    查看>>
    No new migrations found. Your system is up-to-date.
    查看>>
    No qualifying bean of type XXX found for dependency XXX.
    查看>>
    No resource identifier found for attribute 'srcCompat' in package的解决办法
    查看>>
    no session found for current thread
    查看>>
    No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
    查看>>
    NO.23 ZenTaoPHP目录结构
    查看>>
    NO32 网络层次及OSI7层模型--TCP三次握手四次断开--子网划分
    查看>>
    NoClassDefFoundError: org/springframework/boot/context/properties/ConfigurationBeanFactoryMetadata
    查看>>
    Node JS: < 一> 初识Node JS
    查看>>