Blogger Information
Blog 11
fans 0
comment 0
visits 10896
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
CSS实践-样式表来源以及CSS优先级冲突解决原则、方案
山下之石
Original
789 people have browsed it

样式表来源与冲突解决原则

1 样式表三种来源

序号 样式表来源 描述 实例
1 内部样式 在当前文档内头部位置用<style></style>标签声明的样式 <head><style>h1{color:red}</style></head>
2 内联样式 在当前元素以style属性的形式进行声明的样式 <body><h1 style="color:red"></h1></body>
3 外部样式 在当前文档外部定义公共样式文件并在当前文档头部用<link>标签引入公共样式文件 <link rel="stylesheet" href="mycss.css" type="text/css">

2 样式表三种引入方式综合示例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <!-- 外部样式 -->
  7. <link rel="stylesheet" href="mycss.css" type="text/css" />
  8. <title>Document</title>
  9. <!-- 内部样式 -->
  10. <style>
  11. h1 {
  12. color: blue;
  13. }
  14. </style>
  15. </head>
  16. <body>
  17. <h1>wahahah</h1>
  18. <!-- 内联样式 -->
  19. <h2 style="color: red">hahaha</h2>
  20. <h3>houhouhou</h3>
  21. </body>
  22. </html>

3 CSS优先级冲突的解决原则和方案:

虽然 !important 可以将优先级提到最高,但不建议使用。这样破坏了CSS优先级规则。
尽量不使用ID选择器,这样丧失了灵活性。
尽量不使用标签选择器,这样丧失了样式的复用性。
尽量使用兼顾灵活性与复用性的类选择器。
CSS优先级顺序原则:ID选择器 > 类选择器 > 标签选择器。

在较复杂的场景可遵循以下方案进行优先级辨识

案例 id class tag 标识
html body header h1 0 0 4 0, 0, 4
body header.page-header h1 0 1 3 0, 1, 3
.page-header .title 0 2 0 0, 2, 0
#page-title 1 0 0 1, 0, 0

以上案例优先级自上而下逐级增强。
上例事实上是对优先级原则的更细致全是,对于混合情形用权重的方式给与了更细致的分析。比如:同是标签选择器,4个标签比三个标签有更高优先级。两个标签和一个类选择器比四个标签选择器,享有更高优先级。

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:优先级的这个表, 这个计算方式, 要完全掌握, 就能理解许多选择器为什么这样写了
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post