首先说明下样式的优先级,样式有三种:

1. 外部样式(External style sheet)

示例:

<!-- 外部样式 bootstrap.min.css --><link href="css/bootstrap.min.css" rel="stylesheet" type="text/css">

2.内部样式(Internal style sheet)

示例:

<head><style type="text/css"> /*内部样式*/ h1 {color:blue;} </style> </head>

3.内联样式(Inline style)

示例:

<h1 style="color:blue">样式测试</h1>

虽然内联样式可以比较灵活的单独改变某一标签的样式,但还是建议尽量不要使用内联样式。因为这样做虽然更为直观,但不符合结构与表现分离的设计思想。

一般来说,以上三种样式的优先级如下:

内联样式>内部样式>外部样式

选择器的优先级:

选择器的种类可以分为三种,分别是:

1.标签名选择器  如 h1{}。

2.类选择器  如 .test{}。

3.ID选择器  如 #test{}。

同时还需要考虑到内联样式表,即在标签内写入style=""的方式。

在此我们用数字1000,100,10,1来表示上述三种选择器和内联样式表的权值,数字越大则权值越大,也就是优先级越高。

各个选择器的权值如下:

1.  内联样式表的权值最高,设为1000;

2.  ID 选择器的权值其次,设为 100

3.  Class 类选择器的权值第三,设为 10

4.  HTML 标签选择器的权值最低,设为 1

示例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"> <head> <style type="text/css"> /* 内部样式 */ #blueP p { /* 权值 = 100+1=101 */ color:blue; } #blueP .red { /* 权值 = 100+10=110 */ color:red; } #blueP p span { /* 权值 = 100+1+1=102 */ color:yellow; } #blueP span { /* 权值= 100+1=101 */ color:black; } </style> </head> <body> <div id="blueP"> <p class="red">优先级测试 <span>优先级测试</span> </p> <p>优先级测试</p> </div> </body> </html>

在火狐,IE10,Chrome浏览器页面显示结果如下:

<p class="red">标签内的内容显示为红色

<span>标签内的内容显示为黄色

最后一个<p>标签内的内容显示为蓝色

另外在同一组属性设置中标有“!important”规则的优先级最大,示例如下:

<head><style type="text/css"> /*内部样式 */ #redp p { color:red !important; /* 优先级最大*/ color:blue; } </style> </head> <body> <div id="redp"> <p>!important测试</p> </div> </body> </html>

在火狐,IE10,Chrome浏览器页面显示结果如下:

<p>标签里的内容显示为红色

其他补充:

1.选择器的权值越大优先级越高;

2.当权值相等时,后出现的样式表设置比先出现的样式表设置优先级高;

3.继承的CSS 样式优先级低于后来指定的CSS 样式

4.后代选择器和群组选择器是对标签名选择器、类选择器和ID选择器的扩展应用,在此就不介绍了。

转载于:https://www.cnblogs.com/EvanHao/p/learncss.html

css优先级机制说明相关推荐

  1. css优先级计算规则

    2019独角兽企业重金招聘Python工程师标准>>> 最近面试了一些求职者,我问css优先级计算规则是怎样的?答曰ID优先级>class>元素选择器,外联样式优先级低于 ...

  2. CSS优先级算法浅谈

    转自:微点阅读  https://www.weidianyuedu.com 在面试之前对css优先级的理解是 :ID优先级>class>元素选择器,外联样式优先级低于内联样式,内联样式优先 ...

  3. CSS三大特性(CSS层叠性、CSS继承性、CSS优先级)

    1. CSS层叠性 层叠性是指多种CSS样式的叠加. 原则: 样式冲突,遵循的原则是就近原则. 那个样式离着结构近,就执行那个样式. 样式不冲突,不会层叠 示例代码: <!DOCTYPE htm ...

  4. css就近原则_「Web前端开发进阶篇」CSS优先级

    所谓CSS优先级,即是指CSS样式在浏览器中被解析的先后顺序.既然样式有优先级,那么就会有一个规则来约定这个优先级,而这个"规则"就是重点. [引言] 讲解完这篇CSS优先级的文章 ...

  5. day4(css优先级)

    参考博客: http://www.cnblogs.com/yuanchenqi/articles/6856399.html css属性选择器 <!DOCTYPE html> <htm ...

  6. CSS优先级算法是如何计算?

    CSS的specificity特性或非凡性,它是一个衡量css优先级的一个标准, 既然的标准就有判定规定和计算方式,specificity用一个四位数来表示, 更像四级从左到右,左的最大级,一级大于一 ...

  7. 详细解读CSS优先级——Web前端系列学习笔记

    文章目录 样式优先级 选择器的优先级 总结 样式优先级 CSS优先级即是指CSS样式在浏览器中被解析的权重不同. 多重样式(Multiple Styles):如果外部样式.内部样式和内联样式同时应用于 ...

  8. 深入理解css优先级

    为什么要写这篇文章是因为 <style type="text/css"> body h1 {color: green; } html h1 {color: purple ...

  9. CSS语法和CSS优先级

    语法 层叠样式表( Cascading Stylesheet ,简称CSS ), 其基本目标是让浏览器以指定的特性去绘制页面元素,比如颜色,定位,装饰.CSS的语法反映了这个目标,由下面两个部分构建: ...

最新文章

  1. 序列化和反序列化实现
  2. 热点 | Excel不“香”了,数据分析首选Pyhton!
  3. “深度学习之父”大谈AI:寒冬不会出现,论文评审机制有损创新
  4. 何时在C ++中使用extern
  5. Computing--状态机
  6. 【数理知识】Riccati 黎卡提 system
  7. V7000存储运维使用手册
  8. ArcGIS API for Silverlight 调用GP服务准备---GP模型建立、发布、测试
  9. Ural 1627 Join(生成树计数)
  10. 作者:​邵蓥侠(1988-),男,博士,北京明略软件系统有限公司技术经理。...
  11. 微信网页开发 thinkphp5.0的try-catch和重定向
  12. html字母间距属性,html – 是否可以相对于font-size具有字母间距并正确继承?
  13. 05Struts2表单
  14. Ajax学习札记(前言)
  15. 决胜未来,2019年前端开发十大战略性技术布局
  16. dwg如何转换成pdf?
  17. 最简单的RC振荡电路图大全
  18. 《人月神话》:人月神话
  19. FLOW 3D二次开发
  20. wow插件入门资源整理

热门文章

  1. arraylist扩容是创建新数组吗 java_arraylist扩容机制要怎么实现?arraylist怎么扩容...
  2. 变频器输出功率_100米的深井泵,如何接变频器,怎样控制
  3. go语言通道插入0_Go语言入门必知教程-通道
  4. idea 新建ssm java ee_IDEA搭建SSM项目实现增删改查
  5. 西门子逻辑运算指令_西门子S7-200 SMART逻辑运算指令应用实例
  6. 什么是写一个java类,Java什么是类?class的相关介绍
  7. Java 设计模式 Day2 之面向抽象原则:接口(interface)的设计应用与抽象类的区别
  8. java JFileChooser选择文件和保存文件
  9. java中DatagramSocket连续发送多个数据报包时产生丢包现象解决方案
  10. poj 2528 Mayor's posters(线段树+离散化)