发表于: 2017-03-16 20:54:46
1 782
今天完成的事情:
学习css类选择器。
学习white-space:nowrap;文字不换行。
明天的计划:
修改之前的任务,复习基础知识。
收获:
了解CSS的选择器可以分为三大类,id选择器、class选择器以及标签选择器。以及他们组合之后可以分为:
后代选择器、子代选择器、群组选择器、伪类选择器。知道了选择器的优先级怎么设定,以及优先级是怎么计算的。
css选择器的优先级是怎么样设定的?权重又是什么?
小课堂【郑州第52期】
分享人:汪开放
目录
1.背景介绍
2.知识剖析
3.常见问题
4.解决方案
5.编码实战
6.扩展思考
7.参考文献
8.更多讨论
1.背景介绍
什么是选择器?
要使用css对HTML页面中的元素实现一对一,一对多或者多对一的控制,这就需要用到CSS选择器。
HTML页面中的元素就是通过CSS选择器进行控制的。2.知识剖析
CSS的选择器可以分为三大类,
即id选择器、class选择器、标签选择器。用法如下:
#id名 { 属性名:属性值; }
(例:div id=“wu”> #wu{color:red}).class名 { 属性名:属性值; }
(例:div class=“liu”> .liu{color:red})标签名 { 属性名:属性值; }
(例:《p》内容《/p》 p{color:red})后代选择器: 父代名 后代名 { 属性名:属性值; }
注释:后代选择器:就是对象当中所有的子元素,孙子元素以及最底层的元素
子代选择器: 父代名>子代名 { 属性名:属性值; }
注释:子选择器:就单单是子元素,子元素的子元素也就是孙子元素就不算了
群组选择器: #name1, .name2, #name div { 属性名:属性值; }
伪类选择器:{ name:伪类}
:active 向被激活的元素添加样式。
:focus 向拥有键盘输入焦点的元素添加样式。
:hover 当鼠标悬浮在元素上方时,向元素添加样式。
:link 向未被访问的链接添加样式。
:visited 向已被访问的链接添加样式。
:checked 选择器匹配每个已被选中的 input 元素。
:first-child 向元素的第一个子元素添加样式。
2.4通用选择器
* {margin: 0; padding:0}
3.常见问题
问题: 选择器使用的优先级是怎么进行计算的?也就是权重问题
4.解决方案
同一权重
按照它在CSS样式表里声明的顺序,后声明的优先,例如:
h1 {color: blue}
h1 {color: red}
最终胜出的是color: red
不同权重
在属性后面使用 !important 会覆盖页面内任何位置定义的元素样式。
1.最高优先级是 (直接在标签中的设置样式,假设级别为1000)(div style="color:Red;")
2.次优先级是(ID选择器 ,假设级别为100) #myDiv{color:Red;}3.其次优先级是(类选择器,假设级别为10).divClass{color:Red;}
4.最后优先级是 (标签选择器,假设级别是 1) div{color:Red;}5.那么后代选择器的优先级就可以计算了啊
比如 .divClass span { color:Red;} 优先级别就是:10+1=115.编码实战
6.扩展思考
问题一:子选择器和后代选择器的区别?
子元素选择器的对象只包括“儿子”, 后代选择器的对象包括“子子孙孙”
问题二:什么时候需要使用子选择器?
父元素下一级的某种元素具有一些公共的样式
7.参考文献
参考一:Baidu
参考二:W3School
参考三:菜鸟教程
参考四:博客园
参考四:百度贴吧
8.更多讨论
伪类和伪元素的区别?
伪类的操作对象是文档树中已有的元素,而伪元素则创建了一个文档树外的元素。因此,伪类与伪元素的区别在于:
有没有创建一个文档树之外的元素。
ppt链接:https://ptteng.github.io/PPT/PPT/css-03-Selector.html#/21
评论