博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
常见布局修复方案—选择器特殊性问题
阅读量:5259 次
发布时间:2019-06-14

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

最简单的一些
CSS
问题是
由代码
中的打
字和语法错误造成的。例如,在声明末尾忘了加分号,
或者在应该输入font-family输入了font-face。
通过等服务运行代码可以突出显示所有语法错误, 并且显示错误所在的行和对每个错误的简短描述。
除了
语法错误之外,比较常见的一个问题与特殊性和分类次序有关。在将一个规则应用于一个元素时,如果发现没有任何效果,这时往往存在特殊性问题可以应用其他规则而且它们会工作正常但是某些规则似乎不起作用。在这些情况下,问题往往是己经在文档的其他地方使用更特殊的选择器为这个元素定义了规则。
首先介绍一下选择器特殊性的概念:
  为了计算规则的特殊性,给每神选择器都分配一个数字值,然后,将规则的每个选择器的值在一起,计算出规则的特殊性。可惜特殊性的计算不是以10基数的,而是采用一个更高的未指定的基数。这能确保非常特殊的选择器(比如ID选择器不会被大量一般选择(比如类型选择器)所超越,但是,为了简化,如果在一个特定选择器中的选择器数量少于10个,那么可以以10为基数计算特殊性
选择器的特殊性分成4个成分等级:a、b、c、d
  • 果样式是行内样式,那么a=1
  • b等于ID择器的总数。
  • c等于类、伪类和属性选择器的数量。
  • d等于类型选择器和伪元素选择器的数量。
使用这些规则可以计算任何CSS择器的特殊性,下表给出了一些示例。

通过比较最后一列,我们很容易得出特殊性的优先级。
在下面的示例中,开发人员希望将内容区域中的段落背景设置为红色,但是希望下联second段落为蓝色。
 
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>css布局</title>
  6. <style type="text/css">
  7. body {
  8. margin: 0;
  9. padding: 0;
  10. }
  11. .poem p {
  12. background-color: red;
  13. }
  14. .second{
  15. background-color: blue;
  16. }
  17. </style>
  18. </head>
  19. <body>
  20. <div class="poem">
  21. <p class="first">床前明月光</p>
  22. <p class="second">疑是地上霜</p>
  23. <p class="first">举头望明月</p>
  24. <p class="second">低头思故乡</p>
  25. </div>
  26. </body>
  27. </html>
 (修改前)    
但是在浏览器中显示second段落仍为红色。
是因为与选择second
落的选择器相比,选
择内容区域中所有段落的选择器的特殊性更强,在浏览器的开发者工具中也很容易发现第二个样式被前面的覆盖了。为了实现想要的结果,需要
让选择second
段落的选择器更特殊。在这种情况下,最好的方法是在second段落选择器的幵头添加
内容元素的
class:
 
  1. .poem .second{
  2. background-color: blue;
  3. }
(修改后)

转载于:https://www.cnblogs.com/star91/p/5452654.html

你可能感兴趣的文章
Js时间处理
查看>>
Java项目xml相关配置
查看>>
三维变换概述
查看>>
vue route 跳转
查看>>
【雷电】源代码分析(二)-- 进入游戏攻击
查看>>
Entityframework:“System.Data.Entity.Internal.AppConfig”的类型初始值设定项引发异常。...
查看>>
Linux中防火墙centos
查看>>
mysql新建用户,用户授权,删除用户,修改密码
查看>>
FancyCoverFlow
查看>>
JS博客
查看>>
如何设置映射网络驱动器的具体步骤和方法
查看>>
ASP.NET WebApi 基于OAuth2.0实现Token签名认证
查看>>
283. Move Zeroes把零放在最后面
查看>>
Visual Studio Code 打开.py代码报Linter pylint is not installed解决办法
查看>>
Python 数据类型
查看>>
S5PV210根文件系统的制作(一)
查看>>
centos下同时启动多个tomcat
查看>>
slab分配器
查看>>
数据清洗
查看>>
【读书笔记】C#高级编程 第三章 对象和类型
查看>>