第十四节:层叠

层叠

声明冲突:同一个样式,多次应用到同一个元素
比如现在实现,鼠标移动在一个链接的时候实现增加背景颜色,变换字体颜色

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        a {
            color: #f40;
            width: 20px;
            padding: 0 5px;
            text-decoration: none;
            font-style: italic;
        }
        a:hover{
            color: #fff;
            background-color: #f40;
        }
    </style>
</head>
<body>
    <a href="">Lorem.</a>
    <a href="">Cupiditate?</a>
    <a href="">Sequi!</a>
    <a href="">Sint?</a>
    <a href="">Corporis?</a>
    <a href="">Iste.</a>
    <a href="">Laborum!</a>
    <a href="">Excepturi?</a>
    <a href="">Cum?</a>
    <a href="">Beatae?</a>

</body>
</html>

层叠:解决声明冲突的过程,浏览器自动处理(权重计算)

1、比较重要性

重要性从高到低:
1) 作者样式表中的 !important样式
例如上面的代码中如果增加后

        a {
            color: #f40 !important;
            width: 20px;
            padding: 0 5px;
            text-decoration: none;
            font-style: italic;
        }
        a:hover{
            color: #fff;
            background-color: #f40;
        }

页面样式也会改变

2)作者样式表中的普通样式

3)浏览器默认样式表

2、比较特殊性

看选择器
总体规则:选择器选中的范围越窄,越特殊

具体规则:通过选择器,计算出一个4位数( x x x x )
1、千位:如果是内联样式,则为1,否则为0
2、百位:等于选择器中所有id选择器的属性
3、十位:等于选择器中所有类选择器、属性选择器、伪类选择器的数量
4、个位:等于选择器中所有元素选择器、伪元素选择器的数量

个位数进制是256位进1的,所以可以忽略累加进制问题

3、比较源次序

代码书写靠后的胜出

应用

1、重置样式表
书写一些作者样式,覆盖浏览器的默认样式
重置样式表->浏览器默认样式
一些常见的重置样式表:normalize.css、reset.css、meyer.css

2、爱恨法则
link > visited > hover > active

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 2,346评论 0 11
  • day01­_起源和结构 结构:Xhtml xml 表现:CSS 行为:DOM ECMAScript 以上都属于W...
    Sakura_明妃阅读 1,247评论 0 1
  • 简介网络浏览器很可能是使用最广的软件。在这篇入门文章中,我将会介绍它们的幕后工作原理。我们会了解到,从您在地址栏输...
    wengjq阅读 2,096评论 2 15
  • •前端面试题汇总 一、HTML和CSS 21 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? ...
    Simon_s阅读 2,228评论 0 8
  • CSS全称为“层叠样式表 (Cascading Style Sheets)”,它主要是用于定义HTML内容在浏览器...
    百作不死的学习阅读 1,228评论 0 7