Css 原因:最后一个孩子没有';当我们有更多的元素在里面时,它就不能工作了?

Css 原因:最后一个孩子没有';当我们有更多的元素在里面时,它就不能工作了?,css,css-selectors,Css,Css Selectors,看这个例子 HTML .round按钮a:最后一个子项{background:green}在此条件下不适用 动态地,可以有更多的链接,我想给第一个和最后一个锚点提供不同的样式。因为a不是最后一个子元素,最后一个子元素是表单在本例中不是父元素的最后一个子元素-此元素的最后一个子元素是 :first child和:last child选择器–不考虑元素类型-所有元素都相等。 您可以将标签放入div或span中 请参见:最后一个子元素将只匹配父元素的最后一个元素,而不管其类型如何(在您的示例中,:最后

看这个例子

HTML

.round按钮a:最后一个子项{background:green}
在此条件下不适用


动态地,可以有更多的链接,我想给第一个和最后一个锚点提供不同的样式。

因为
a
不是最后一个子元素,最后一个子元素是
表单
在本例中
不是父元素
的最后一个子元素-此元素的最后一个子元素是

:first child和:last child选择器–不考虑元素类型-所有元素都相等。 您可以将标签放入div或span中


请参见

:最后一个子元素
将只匹配父元素的最后一个元素,而不管其类型如何(在您的示例中,
:最后一个子元素
将只匹配父元素的最后一个元素)。使用
:type的last
匹配父级中特定类型的最后一个元素,例如:

.round-buttons a:last-of-type {background:green}

表单是最后一个对象。 您可以将链接放在一个单独的div中,并调用该div中的最后一个子级

<div>
    <div>
        <!-- LINKS HERE -->
    </div>
    <form></form>
</div>


但动态地说,可能会有更多链接,我想为第一个和最后一个锚点提供不同的样式。因此,唯一的解决方案是@Hurda answer
a:last of type
将只匹配最后一个锚。
:last of type
不受IE 8和更早版本的支持。最跨浏览器的方式是使用类。@Jukka K.Korpela:如果他已经在使用
:last child
,我不认为IE8缺乏对这两个伪类的支持会困扰他。@BoltClock,在生成链接时,添加
class
属性应该很容易,以避免使用
:last child
.round-buttons a:last-of-type {background:green}
<div>
    <div>
        <!-- LINKS HERE -->
    </div>
    <form></form>
</div>