Html 最后一个孩子不工作

Html 最后一个孩子不工作,html,css,Html,Css,在这里,我想删除最后一个孩子('Headline third')上的白色边框:bottom 我尝试了以下CSS,但没有成功 #containerr dt.last-child { border-bottom:none; } 知道我做错了什么吗 #containerr dt:nth-last-child(2){ border-bottom:none; } 试试看,这对我来说很好。你实际上在寻找的是:最后一个孩子——但是这并没有以你期望的方式实现:最后一个子元素表示元素必须是父元素中的

在这里,我想删除最后一个孩子('Headline third')上的白色
边框:bottom

我尝试了以下CSS,但没有成功

#containerr  dt.last-child {
border-bottom:none;
}
知道我做错了什么吗

#containerr dt:nth-last-child(2){
    border-bottom:none;
}

试试看,这对我来说很好。

你实际上在寻找的是
:最后一个孩子
——但是这并没有以你期望的方式实现<代码>:最后一个子元素表示元素必须是父元素中的最后一个子元素,即使后面的元素属于不同的类/类型

您实际需要的是:


唯一的问题是它在V9之前的IE中不受支持。

这并没有回答您的问题,但提供了一个解决问题的方法。

我倾向于不使用
:last child
(因为我使用的是为较旧的浏览器开发的,还有一个较旧的浏览器-IE)。我还发现:和最后一个孩子一起工作有点尴尬

:first child
得到了更广泛的支持(CSS 2),所以我更喜欢使用它

您所做的不是添加底部边框,而是添加顶部边框-因此输出将是border>content>border>content

然后使用:first child从第一个元素中删除上边框,这样就剩下了content>border>content

我复制了你的小提琴,做了两个改动:

首先,将底部边框替换为顶部边框:

#containerr dt {
    [...]
    border-top:1px solid white;
}
其次,使用
:first child
删除第一个dt的上边框:

#containerr  dt:first-child {
    border-top:none;
}
这是一把小提琴:


享受吧

伪选择器的前缀是冒号(
)。
前缀表示一个类。同样,
:last child
以集合中最后一个元素为目标。在您的例子中,
dd
元素是最后一个子元素,因此您应该使用类型为的
:last。更改:

#containerr dt.last-child
致:

#containerr dt:类型的最后一个


查看以了解更多详细信息。

。最后一个孩子
正在查找实际的
,您可能想要的是伪类……您的拼写是什么意思
#containerr
拼写正确。@Mathletics我不会这么说;这并不是一个拼错的单词。@F4r-20问题在于
(点)和
(冒号)之间的区别。我知道这不是一个滑键,但它仍然是一个打字错误。(当我看我的键盘时,它可能是一个滑键。)@FDL:我也试过了
:last child
,但不起作用。这应该是正确的答案。因为,你知道,我们真的需要停止支持IE:P这是正确的答案,因为最后一个孩子并不是一年中最后一个孩子的目标。但最后一种是这样的。这看起来很棒。谢谢
#containerr  dt:first-child {
    border-top:none;
}