前端常见bug系列1:容易被误解的:last-child 和 :first-child

简介: 用某个选择器过滤出来一个元素集合,当我们想选中最后一个元素的时候,是不是很容易想到:last-child?比如,有下面一段CSS和HTML片段: ``` .section{ margin-bottom: 50px; } .section1-item:last-child{ col

用某个选择器过滤出来一个元素集合,当我们想选中最后一个元素的时候,是不是很容易想到:last-child?比如,有下面一段CSS和HTML片段:

<style>
        .section{
            margin-bottom: 50px;
        }

        .section1-item:last-child{
            color: blue;
        }
</style>
<section class="section section1">
        <header>header</header>
        <p class="section1-item card">111</p>
        <p class="section1-item card">222</p>
        <p class="section1-item card">333</p>
        <p class="section1-item card">444</p>
        <footer>footer</footer>
</section>

本来是想选中<p class="section1-item card">444</p>给它设置颜色为蓝色的,结果什么也没有发生。为什么?

查看W3C的相关介绍

The :last-child pseudo-class represents an element that is the last child of some other element.

someselecttor:last-chid 所表示的是,如果someselecttor所选中的某个节点恰好是其父元素的最后一个直接子节点,那么该选择器生效。而不是表示someselecttor选中的节点集合的最后一个。

同理,我们马上可以想到,:first-child是不是也有类似问题?添加一句样式.section1-item:last-child{ color: red; }到上面的例子中一试就知道,问题果然存在。

someselecttor:first-chid 所表示的是如果someselecttor所选中的某个节点恰好是其父元素的第一个直接子节点,那么该选择器生效。

目录
相关文章
|
前端开发 测试技术
你发现一个bug,如何定位这个是前端还是后端缺陷?建议收藏
你发现一个bug,如何定位这个是前端还是后端缺陷?建议收藏
469 0
|
Web App开发 前端开发 开发者
|
前端开发 安全 程序员
测试大姐趁我下班点又提了个bug!前端你咋多个options请求?
测试大姐趁我下班点又提了个bug!前端你咋多个options请求?
82 0
|
4月前
|
前端开发 安全 JavaScript
如何区分是前端BUG还是后端BUG
1 基于经验 前端BUG特点: (1)界面排版、布局错误、兼容性问题 (2)网络不稳定导致JS或CSS未完全加载或请求超时(一般不需要提BUG),正常网络下加载超时 后端BUG特点: 业务逻辑、性能问题、数据问题、安全性问题 2 通过HTTP请求和响应信息 可以通过浏览器开发者工具(F12)、postman、fiddler(移动端可通过该工具抓包)、Charles、Proxyman、Wireshark、HttpCanary、tcpdump等工具。
77 1
|
3月前
|
前端开发 JavaScript 流计算
前端 JS 经典:打印对象的 bug
前端 JS 经典:打印对象的 bug
40 0
|
5月前
|
前端开发 安全 JavaScript
怎么判断bug是前端问题还是后端问题?
怎么判断bug是前端问题还是后端问题?
117 0
|
5月前
|
前端开发
elementui-upload组件自定义样式上传(upload中常用的属性,但是网络上却找不到教程)(解决bug删除之后再次上传会上传删除的图片)专注后端工程师的前端速成
elementui-upload组件自定义样式上传(upload中常用的属性,但是网络上却找不到教程)(解决bug删除之后再次上传会上传删除的图片)专注后端工程师的前端速成
589 0
|
5月前
|
JSON 缓存 前端开发
编写代码前,如何规避尽可能多的前端bug?
编写代码前,如何规避尽可能多的前端bug?
65 0
|
前端开发 芯片
【芯片前端】“异步FIFO全解析”的BUG——格雷码连续性
【芯片前端】“异步FIFO全解析”的BUG——格雷码连续性
122 1
|
11月前
|
缓存 前端开发 JavaScript
前端Vue小项目的一个非常诡异离谱的"眼神不好"Bug
公司放假, 现在来提升自己的前端的技术, 想着使用饿了么UI搭建一个简单的页面, 并完成mock数据的获取, 一个小项目就好了....
79 0