返回顶部
首页 > 资讯 > 前端开发 > JavaScript >如何解决CSS执行顺序与优先权问题
  • 351
分享到

如何解决CSS执行顺序与优先权问题

2024-04-02 19:04:59 351人浏览 八月长安
摘要

本篇内容主要讲解“如何解决CSS执行顺序与优先权问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决CSS执行顺序与优先权问题”吧!CSS执行顺序与优先权

本篇内容主要讲解“如何解决CSS执行顺序与优先权问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决CSS执行顺序与优先权问题”吧!

CSS执行顺序与优先权的问题

CSS执行顺序与优先权的问题其实就是一个冲突解决的问题,当同一个元素(或内容)被CSS选择符选中时,就要按照优先权取舍不同的CSS规则,这其中涉及到的问题其实很多。

首先就是CSS规则的specificity(特殊性),CSS2.1有一套关于specificity的计算方式,用一个四位的数字串(CSS2是三位)来表示,最终specificity越高的规则越特殊,在优先级判定时也就越有优势。关于specificity的具体计算在各种情况下的数字加成有如下一般规则:

◆每个ID选择符(#someid),加0,1,0,0。

◆每个class选择符(.someclass)、每个属性选择符(形如[attr=”"]等)、每个伪类(形如:hover等)加0,0,1,0

◆每个元素或伪元素(:firstchild)等,加0,0,0,1

其他选择符包括全局选择符*,加0,0,0,0。相当于没加,不过这也是一种specificity,后面会解释。

按这些规则将数字串逐位相加,就得到最终计算得的specificity,然后在比较取舍时按照从左到右的顺序逐位比较。

举一些例子吧:

ExampleSourceCode

h2{color:red;}    bodyh2{color:green;}  ——后者胜出  h3.grape{color:purple;}    h3{color:silver;}  ——前者胜出  html>bodytabletr[id=”totals”]tdul>li{color:maroon;}    li#answer{color:navy;}  ——后者胜出

除了specificity还有一些其他规则

文内的样式优先级为1,0,0,0,所以始终高于外部定义。这里文内样式指形如<divstyle=”color:red”>blah</div>的样式,而外部定义指经由<link>或<style>标签定义的规则。

有!important声明的规则高于一切。

如果!important声明冲突,则比较优先权。

如果优先权一样,则按照在源码中出现的顺序决定,后来者居上。

由继承而得到的样式没有specificity的计算,它低于一切其他规则(比如全局选择符*定义的规则)。

关于经由@import载入的外部样式,由于@import必须出现在所有其他规则定义之前(如不是,则浏览器应该忽略之),所以按照后来居上原则,一般优先权冲突时是占下风的。

这里需要提一下IE,IE是可以识别位置错误的@import的,但无论@import在什么地方,它都认为是位于所有其他规则定义之前的,这可能会引发一些误会。所以优先权问题虽然看起来简单,但其背后还是有蛮复杂的机制的,需要多多留意。

到此,相信大家对“如何解决CSS执行顺序与优先权问题”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 如何解决CSS执行顺序与优先权问题

本文链接: https://lsjlt.com/news/77153.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何解决CSS执行顺序与优先权问题
    本篇内容主要讲解“如何解决CSS执行顺序与优先权问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决CSS执行顺序与优先权问题”吧!CSS执行顺序与优先权...
    99+
    2024-04-02
  • CSS的执行顺序和优先级问题介绍
    本篇内容介绍了“CSS的执行顺序和优先级问题介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、确定CS...
    99+
    2024-04-02
  • web开发中JavaScript代码执行的先后顺序问题
    这篇文章主要介绍了web开发中JavaScript代码执行的先后顺序问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、js--->...
    99+
    2024-04-02
  • 详解JavaScript Alert函数执行顺序问题
    目录问题分析解决替换 Alert() 函数setTimeOut函数小结问题 前几天使用 JavaScript 写 HTML 页面时遇到了一个奇怪的问题: 我想实现的功能是通过 con...
    99+
    2024-04-02
  • 如何解决SQL语句中AND和OR执行顺序遇到的问题
    这篇文章将为大家详细讲解有关如何解决SQL语句中AND和OR执行顺序遇到的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。场景1、有一张学生表Student,表字段包括...
    99+
    2024-04-02
  • 如何解决多个Ajax请求执行返回先后的问题
    这篇文章主要讲解了“如何解决多个Ajax请求执行返回先后的问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何解决多个Ajax请求执行返回先后的问题”吧!...
    99+
    2024-04-02
  • 如何理解css样式的特点与优先选择权
    本篇内容主要讲解“如何理解css样式的特点与优先选择权”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何理解css样式的特点与优先选择权”吧!CSS样式的特点:...
    99+
    2024-04-02
  • 如何解决Docker-compose中depends_on顺序的问题
    小编给大家分享一下如何解决Docker-compose中depends_on顺序的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!正文:需求是要将一个 打包好的...
    99+
    2023-06-25
  • mongodb中如何解决db.serverStatus()命名执行时报无权限问题
    这篇文章主要介绍了mongodb中如何解决db.serverStatus()命名执行时报无权限问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一...
    99+
    2024-04-02
  • Vue中.vue文件比main.js先执行的问题及解决
    目录问题解释Vue加载时的执行顺序如下ES6模块化加载规则原因总结问题 在main.js,App.vue和两个子组件(A.vue和B.vue)中分别输出语句,查看他们的加载顺序: m...
    99+
    2022-12-08
    Vue中.vue文件 main.js先执行 Vue vue文件 main.js
  • 如何解决ubuntu crontab不执行的问题
    这篇文章主要讲解了“如何解决ubuntu crontab不执行的问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何解决ubuntu crontab不执行的问题”吧!在脚本文件的第二行添加...
    99+
    2023-06-13
  • 如何解决Angularjs异步操作后台请求用$q.all排列先后顺序的问题
    这篇文章主要介绍了如何解决Angularjs异步操作后台请求用$q.all排列先后顺序的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。最...
    99+
    2024-04-02
  • 如何解决php exec中文不执行问题
    本文操作环境:linux5.9.8系统、PHP7.1版、DELL G3电脑如何解决php exec中文不执行问题PHP 调用 exec 执行中文命令的坑:服务器系统Linux通过php exec 执行rar x 解压命令 保持目录结构,压缩...
    99+
    2018-04-28
    php exec
  • &&、()、||是如何决定Linux命令的执行顺序
    这期内容当中小编将会给大家带来有关&&、()、||是如何决定Linux命令的执行顺序,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Linux系统中Linux命令:&&、()...
    99+
    2023-06-28
  • 如何理解权重和层叠规则决定了CSS样式优先级
    本篇内容介绍了“如何理解权重和层叠规则决定了CSS样式优先级”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!...
    99+
    2024-04-02
  • 微信小程序getUserInfo授权问题如何解决
    本篇内容主要讲解“微信小程序getUserInfo授权问题如何解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“微信小程序getUserInfo授权问题如何解决”吧!设置一个用户授权登录的过渡页...
    99+
    2023-06-26
  • C语言执行程序时遇到的常见问题如何解决
    本文小编为大家详细介绍“C语言执行程序时遇到的常见问题如何解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言执行程序时遇到的常见问题如何解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.新命名一个头文...
    99+
    2023-07-05
  • 如何解决 shell 脚本重复执行的问题
    简介 flock 是文件锁命令,它可以保证linux系统上进程之间安全的访问临界资源,在shell脚本中,可以用来控制逻辑的互斥性 实例1 现有脚本 a.sh, 内容如下 #!/bin/bash echo "[...
    99+
    2022-06-04
    shell 脚本重复执行 解决shell脚本重复执行
  • labview执行请求时出现问题如何解决
    当LabVIEW执行请求时出现问题,可以尝试以下解决方法:1. 检查错误信息:LabVIEW会提供详细的错误信息,可以通过查看错误信...
    99+
    2023-09-15
    labview
  • 如何解决Jquery $.ajax函数外的一段代码的执行顺序
    本篇内容主要讲解“如何解决Jquery $.ajax函数外的一段代码的执行顺序”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决Jquery $.ajax函...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作