CSS特性
css的特性
css具有两大特性:继承性和层叠性
1、继承性
指的是子元素继承父元素的样式,但没有所有的样式都可以继承(那样就太可怕了)
所以具有继承性的属性主要分为三大类
a、文本属性
font-size、font-family、font-style、font-weight、font、text-align、word-spacing、line-height、text-index
b、列表相关属性
list-style-image、list-style-position、list-style-type、list-style、
c、颜色相关属性
color
Q:为什么我设置了a元素父标签的color属性,但是a标签没有跟着发生变化
A:因为a标签具有默认样式,优先级高于继承性,所以要设置a标签的颜色属性就要对a标签单独进行
2、层叠性
<html>
<head>
<style type="text/css">
div{color:red;}
div{color:yelow;}
div{color:blue;}
</style>
</head>
<body>
<div>color</div>
<div>color</div>
<div>color</div>
</body>
<html>
运行后:
由于层叠性前面的样式被div{color:blue}覆盖,最后显示出来的都是蓝色
css发生层叠性的原则:
1、元素相同
2、属性相同
3、权重相同
css的优先级
层叠指的就是样式层叠,当样式的覆盖发生冲突时,以优先级高低为准
样式覆盖发生冲突有以下5种:
1、引用方式冲突
2、继承方式冲突
3、指定样式冲突
4、继承样式与指定样式冲突
5!important
引用方式冲突
css有3中引用方式:外部样式、内部样式、行内样式
优先级如下:
行内样式>(外部样式=内部样式)
<html>
<head>
<style type="text/css">
div{color:blue;}
</style>
<link href="index.css" type="text/css" rel="stylesheet"/>
</head>
<body>
<div style="color:yellow;">color</div> </body>
<html>
结果:
继承方式冲突
就是设置了当前元素的颜色属性等最近的祖先元素也设置了,样式继承了祖先的样式
指定样式冲突
当指定样式发生冲突,当前权重最高获胜
选择器 | 权值 |
通配符 | 0 |
伪元素 | 1 |
元素选择器 | 1 |
class选择器 | 10 |
伪类 | 10 |
属性选择器 | 10 |
id选择器 | 100 |
行内样式 |
1000 |
常见伪元素有四个:即::before,::after,::first-letter,::first-line
继承样式与指定样式发生冲突
指定样式获胜
就是从别人那继承的,都不如自己设定的优先级高
!important
如果一个样式使用!important来声明,那么这个样式会覆盖css中任何其他样式的声明
CSS特性的更多相关文章
- 深入探讨 CSS 特性检测 @supports 与 Modernizr
什么是 CSS 特性检测?我们知道,前端技术日新月异的今天,各种新技术新属性层出不穷.在 CSS 层面亦不例外. 一些新属性能极大提升用户体验以及减少工程师的工作量,并且在当下的前端氛围下: 很多实验 ...
- 2017年值得学习的3个CSS特性
原文:https://bitsofco.de/3-new-css-features-to-learn-in-2017/译文:http://caibaojian.com/3-new-css-featur ...
- 即将来到: CSS Feature Queries (CSS特性查询)
Feature Queries 是CSS3 Conditional Rules specification中的一部分,它支持“@supports”规则,“@supports”规则可以用来测试浏览器是否 ...
- css基础(css书写 背景设置 标签分类 css特性)
css书写位置 行内式写法 <p style="color:red;" font-size:12px;></p> 外联式写法 <link re ...
- 一些你不知道的css特性【一】
浏览器禁止用户在标签的style中使用js写入"!important"的特性 我们在使用jQuery设置css的时候 $('#text').css('height', '200px ...
- 容易被忽略CSS特性
CSS初学感觉很简单,但随着学习的深入才感觉CSS的水由多深,平常总会遇到各种坑,先总结一些经常遇到的坑 大小写不敏感 虽然我们平时在写CSS的时候都是用小写,但其实CSS并不是大小写敏感的 .tes ...
- CSS特性: 继承 和 层叠
在css中也存在着继承关系,与面向对象的编程语言不同,css的继承很简单,而且主要指的是在CSS盒模型中,外围的盒子的样式会被内部所包含的盒子所继承.具体来了解一下. HTML元素之间存在一个”树型“ ...
- 容易被忽略的CSS特性
CSS初学感觉很简单,但随着学习的深入才感觉CSS的水由多深,平常总会遇到各种坑,先总结一些经常遇到的坑 大小写不敏感 虽然我们平时在写CSS的时候都是用小写,但其实CSS并不是大小写敏感的 .tes ...
- Css 特性之 transition和transform
CSS 有一些新的属性,可以简化代码的书写,用简单的代码就可以实现复杂的变化.不用像 js 那样,需要写很多代码 这里主要介绍三个属性:transition ,transform,以及translat ...
随机推荐
- js插件---bootstrap插件daterangepicker是什么
js插件---bootstrap插件daterangepicker是什么 一.总结 一句话总结:日期段选择插件,也可选择日期 日期段选择插件,也可选择日期 1.daterangepicker 控件如何 ...
- WGCNA | weighted correlation network analysis
早就接触过这个包了,只是一直畏惧,以为很复杂,也没有应用场景,所以认识很肤浅. 现在有应用场景了,我自己开发了一个幼稚的版本,发现了很多需求,后来想起了WGCNA似乎部分解决了我的问题,今天认真打开了 ...
- CentOS优化
一.CentOS6.x优化 #.更改yum源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup ...
- 关于新手用java写题目,遇到的字符和字符串问题
我看到一遍很好的博客: https://blog.csdn.net/qq_37267015/article/details/78738512 1.首先了,java之中,没有像C语言那样的getchar ...
- POJ-3693/HDU-2459 Maximum repetition substring 最多重复次数的子串(需要输出具体子串,按字典序)
http://acm.hdu.edu.cn/showproblem.php?pid=2459 之前hihocoder那题可以算出最多重复次数,但是没有输出子串.一开始以为只要基于那个,每次更新答案的时 ...
- hdu-2639 Bone Collector II 背包第K优
http://acm.hdu.edu.cn/showproblem.php?pid=2639 在背包的基础上维护一个size<=K的最大值集合,为什么维护K个就好了呢,因为如果当前状态有多余K个 ...
- php数组的逐行写入文件与读取
<?php /** * * 对数组$arr1=['Apple Orange Banana Strawberry'] 写入文件,并读取 **/ class IoFile { private $pa ...
- SQL SERVER 字符拆分列为多行
注:先学习sql server里的递归CTE. 假设有兴趣表Hobbys Name Hobby 小张 篮球,足球,羽毛球 Name Hobby 小张 篮球 小张 足球 小张 羽毛球 采用[递归cte] ...
- 『MXNet』第六弹_Gluon性能提升
一.符号式编程 1.命令式编程和符号式编程 命令式: def add(a, b): return a + b def fancy_func(a, b, c, d): e = add(a, b) f = ...
- Object.keys的使用
链接:https://www.nowcoder.com/questionTerminal/52c41b84e32a4158883cb112a1d1f850来源:牛客网 输出对象中值大于2的key的数组 ...