CSS作业7

1.class 和 id 的使用场景?

  • class用于选择同一类型的元素,id具有唯一性,一个id只能匹配一个元素

2.CSS选择器常见的有几种?

  • 基础选择器
T18A2CVBTUK4G1GSYIGFKDT.png
  • 组合选择器
Paste_Image.png
  • 属性选择器
Paste_Image.png
  • 伪类选择器
Paste_Image.png
  • 伪元素选择器
Paste_Image.png

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

** 优先级从高到低依次是 **

  • 1.左属性后面使用!important会覆盖页面内任何位置定义的元素样式
  • 2.作为style属性写在元素标签上的内联样式
  • 3.id选择器 #
  • 4.类选择器 .class
  • 5.伪类选择器 first-child
  • 6.属性选择器 p[XXX]
  • 7.标签选择器 p{}
  • 8.通配符选择器 *
  • 9.浏览器选择器
    ** 在复杂场景中优先级的计算是根据选择器的优先级确定权重,同一级选择器数量相同则比较下一级选择器的数量;通俗点就像是皇帝纳妾,先比长相气质,再比心性性格,再比文才武略,凡是贤良淑德、德才兼备者方可进身为妃。 **

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

Paste_Image.png

正确顺序为:
a:link
a:visited
a:hover
a:active
原因:
1.当选择器优先级别相同时,后定义的会覆盖先定义的
2.当鼠标经过未访问链接,同时有link和hover属性,由于后定义的覆盖先定义的,所以hover在后面以此类推,当鼠标经过已访问链接,同时有visited和hover属性,由于后定义的覆盖先定义的,所以hover在link和visited后面。

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

Paste_Image.png
  • ** 列出你知道的伪类选择器 **
    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 匹配父元素下第一个子元素。

Paste_Image.png

div:first-of-type 是指匹配父元素下同种类型的第一个元素。

Paste_Image.png

div :first-child 选择div的后代元素中的第一个子元素
div :first-of-type 选择div的后代元素的同种类型的第一个元素

  • ** 运行如下代码,解析下输出样式的原因。**
Paste_Image.png

** .item1:first-child ** 匹配class名为item1的第一个元素为红色,所以p标签aa为红色。
** .item1:first-of-type ** 匹配class名为item1不同类型元素的第一个元素背景色为蓝色,第一种类型p标签aa背景色为蓝色;第二种类型h3标签bb背景色为蓝色,而h3标签cc为第二种类型的第二个子元素所以背景色不变。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.class 和 id 的使用场景? 当页面中某元素的样式并不独有,或与其他元素共用一个样式时,可以为该元素指定...
    Feiyu_有猫病阅读 1,032评论 0 0
  • 1.class 和 id 的使用场景? 两者都能选取DOM节点并给DOM节点添加样式,但是W3C标准里规定页面中只...
    饥人谷_米弥轮阅读 504评论 0 1
  • 1.class 和 id 的使用场景? 多个标签可以使用同一个class,一个id只能对应一个标签 2.CSS选择...
    molly的红草帽阅读 422评论 0 0
  • 1.class 和 id 的使用场景? 类选择器允许以一种独立于文档元素的方式来指定样式。该选择器可以单独使用,也...
    草鞋弟阅读 2,551评论 0 1
  • class 和 id 的使用场景? 每个标签只能设置一个id,此id在页面中只能出现一次。id多用于页面分块时块级...
    cross_王阅读 531评论 0 0

友情链接更多精彩内容