美文网首页饥人谷任务
入门任务7 CSS选择器

入门任务7 CSS选择器

作者: 饥人谷_zhangfan | 来源:发表于2017-05-17 16:22 被阅读0次

class 和 id 的使用场景?

id:id选择器,使用#name定义(name为id名,可任意取名),使用id="name"调用,其优先级高于类选择器,一个标签只能有一个id且每个id只能使用一次,多用于页面分块的块级标签上;
class:类选择器,使用.name定义(name为类名,可任意取名),使用class="name"调用,一个标签可以有多个类且同一个类可以用到不同的标签上,多用于多个标签样式相似或完全相同时;

CSS选择器常见的有几种?

  1. 基础选择器
基础选择器.png
  1. 组合选择器
组合选择器.png
  1. 属性选择器
属性选择器.png
  1. 伪类选择器
伪类选择器·.png 伪类选择器.png
  1. 伪元素选择器
伪元素选择器.png

选择器的优先级是怎样的?对于复杂场景如何计算优先级?

  1. 在属性后面使用 !important 会覆盖页面内任何位置定义的元素样式
  2. 作为style属性写在元素标签上的内联样式
  3. id选择器
  4. 类选择器
  5. 伪类选择器
  6. 属性选择器
  7. 标签选择器
  8. 通配符选择器
  9. 浏览器自定义
    对于复杂场景,我们通过计算css不同选择器的个数来计算优先级,可以用一个四位数来表示,其中行内样式权重最高,行内样式的个数放在千位上,ID选择器权重次之,ID选择器的个数放在百位上,类、属性选择器以及伪类选择器权重相同,低于行内样式和ID选择器,所以,这个3个选择器的个数之和放在十位上,最后,标签选择器、伪类选择器权重最低,个数放在个位上。
    for example:
#ct .box p {}     一个ID选择器,百位是1,一个类选择器,十位是1,一个标签选择,个位是1,所以是0111;
ul ol li.active {} 有一个伪元素选择器,十位是1,3个标签选择器,个位是3,所以是0013;
0111>0013 所以 前者的样式优先

a:link, a:hover, a:active, a:visited 的顺序是怎样的? 为什么?

a:link
a:visited
a:hover
a:active
四个都是伪类选择器,优先级相同;考虑他们会相互覆盖,所以要按照这个顺序

以下选择器分别是什么意思?

#header{ } ID为header的元素;
.header{ } class为header的元素;
.header .logo{ } class为header元素的后代元素中class为logo的元素;
.header.mobile{ } class既是header又是mobile的元素;
.header p, .header h3{ } class为header元素的后代中的p元素,和 class为header元素的后代中的h3元素
#header .nav>li{ } ID为header元素的的后代中class为nav的直接li子元素
#header a:hover{ } 鼠标悬停的ID为header元素的后代中a元素
#header .logo~p{ } ID为header的元素中的class为logo之后的同级p元素
#header input[type=“text”]{ } ID为header的元素中 所有属性type值为text的元素

列出你知道的伪类选择器

E:first-child 匹配元素E的第一个子元素
E:link 匹配所有未被点击的链接
E:visited 匹配所有已被点击的链接
E:active 匹配鼠标已经其上按下、还没有释放的E元素
E:hover 匹配鼠标悬停其上的E元素
E:enabled 匹配表单中可用的元素
E:disabled 匹配表单中禁用的元素
E:checked 匹配表单中被选中的radio或checkbox元素
E::selection 匹配用户当前选中的元素
E:nth-child(n) 匹配其父元素的第n个子元素,第一个编号为1
E:nth-last-child(n) 匹配其父元素的倒数第n个子元素,第一个编号为1
E:nth-of-type(n) 与:nth-child()作用类似,但是仅匹配使用同种标签的元素
E:nth-last-of-type(n) 与:nth-last-child() 作用类似,但是仅匹配使用同种标签的元素
E:last-child 匹配父元素的最后一个子元素,等同于:nth-last-child(1)
E:first-of-type 匹配父元素下使用同种标签的第一个子元素,等同于:nth-of-type(1)
E:last-of-type 匹配父元素下使用同种标签的最后一个子元素,等同于:nth-last-of-type(1)
E:only-child 匹配父元素下仅有的一个子元素,等同于:first-child:last-child或 :nth-child(1):nth-last-child(1)
E:only-of-type 匹配父元素下使用同种标签的唯一一个子元素,等同于:first-of-type:last-of-type或 :nth-of-type(1):nth-last-of-type(1)
E:not(selector) 匹配不符合当前选择器的任何元素

div:first-child、div:first-of-type、div :first-child和div :first-of-type的作用和区别

div:first-child 匹配div父元素中第一个子元素;
div :first-child 匹配div元素后代中的第一个子元素;
div:first-of-type匹配父元素下使用相同标签的第一个子元素;
div :first-of-type匹配div元素后代中第一个使用相同标签的子元素;

QQ截图20170517160232.png

.item1:first-child 匹配class为item1父元素下的第一个子元素,class为item1的p、h3元素的父元素都是div,div的第一个子元素是p,所以p字体颜色变红;
.item1:first-of-type 匹配父元素下第一个使用同种标签的子元素,父元素div下有p和h3 两种标签,所以p和第一个h3被选中,背景颜色变蓝。

相关文章

  • 入门任务7 CSS选择器

    class 和 id 的使用场景? id:id选择器,使用#name定义(name为id名,可任意取名),使用id...

  • 2019-04-29

    基于CSS入门基础必备 CSS选择器的使用 CSS制作照片墙 效果显示:

  • 任务7(css选择器)

    1 .类选择器和id选择器都用于对html标签进行css样式设置,但用于不同场景。 2 . css选择器常见的有...

  • 网页编程day-39:CSS

    一、引入CSS样式与CSS选择器 1.css入门: (1)什么CSS? 1)CSS 指层叠样式表 (Cascadi...

  • CSS相关总结

    一、CSS入门 1、css选择器 选择器的作用是“用于确定(选定)要进行样式设定的标签(元素)”。 有若干种形式的...

  • CSS3

    前言-内容 CSS是什么 CSS怎么用(快速入门) CSS选择器(重点+难点) 美化网页(文字,阴影,超链接,列表...

  • css入门

    今天说了css的入门基础知识,如下1.1 基础选择器(标签选择器) /* 标签选择器 */div{font-siz...

  • 入门7 css选择器

    1. class 和 id 的使用场景? class:制定标签的类名。格式: 场景:CSS操作,把一些特定样式放到...

  • css入门(二)

    CSS入门(二) [TOC] 一、组合选择器 每个选择器位可以是任意基础选择器或选择器组合 1.群组选择器 可以一...

  • 慕课网 Web 1元体验课(上)

    css入门 内联样式 啦啦啦啦 内嵌样式表 外联样式表 css 的五种选择器 元素(标签)选择器p{xxx} 类选...

网友评论

    本文标题:入门任务7 CSS选择器

    本文链接:https://www.haomeiwen.com/subject/eukdxxtx.html