Css 最后一个孩子
我想使用以下内容来针对我的div中最后一个ul的最后一个链接(a)。因此,我想到的是:Css 最后一个孩子,css,css-specificity,css-selectors,Css,Css Specificity,Css Selectors,我想使用以下内容来针对我的div中最后一个ul的最后一个链接(a)。因此,我想到的是: #menu ul:last-child li a { /*.....*/ } 我不能手动向该元素添加类,即使我想动态地添加,我仍然必须以上述方式将该元素作为目标 你知道为什么这不起作用吗?我只是猜测你的HTML是什么,但是: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/
#menu ul:last-child li a {
/*.....*/
}
我不能手动向该元素添加类,即使我想动态地添加,我仍然必须以上述方式将该元素作为目标
你知道为什么这不起作用吗?我只是猜测你的HTML是什么,但是:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css" >
div ul:last-child li:last-child a:last-child {
background-color: red;
}
</style>
</head>
<body>
<div>
<ul><li>First list</li></ul>
<ul><li>Second list</li></ul>
<ul>
<li>Item 1</li>
<li>
<a href="#">First Link</a>
<a href="#">Last Link</a>
</li>
</ul>
</div>
</body>
</html>
最后一个孩子李:最后一个孩子a:最后一个孩子{
背景色:红色;
}
- 第一个列表
第二个列表
- 项目1
-
如果您想要最后一个ul中的最后一个链接(假设链接位于li
-元素中),这就是您想要的:
#menu ul:last-child li:last-child a {
/*.....*/
}
返回菜单元素李>#menu
返回ul:last child
#菜单中的最后一个
ul
返回该li:last child
ul
我还没有试过,但我想这会管用。我已经在safari(4.0.3)和firefox(3.5.4)中测试过你的代码,所有代码都可以正常工作,我不知道在IE8中如何 考虑到这是CSS3标准中定义的一个新的伪类(选择器),并非所有浏览器都完全支持它,而且最旧的浏览器也不支持它 作为一般规则,出于性能原因,我建议您避免使用超过2级的CSS指令(如果确实需要,最多3级)
但是,我认为如果您不想将样式直接应用于标记元素,那么必须找到javascript解决方案 CSS
last child
在IE中不起作用,包括IE8
它应该适用于所有其他当前浏览器,但如果您计划在需要支持IE的网站上使用它,则需要找到一种替代方法
此页面包含CSS选择器的完整列表,以及支持这些选择器的浏览器:
如果您能提供HTML样本,那就太好了。对不起,我本应该有一个,但我只是需要一些想法。。。无论如何,由于某种莫名其妙的原因,我的浏览器似乎都没有响应:lastchild或:first child。我刚刚在jQuery中实现了它:$('#menu ul li a:last').css({});它是有效的……但是关于你的解释,只有一个疑问……不是这样吗#菜单ul选择#菜单中的所有uls;:最后一个子li选择所有菜单uls中的最后一个li;和:last child a选择最后一个li中的最后一个链接?我只是将其用于水平导航,其中最后一个li没有子菜单ul,它选择特定的li…….正是我需要的+1:last child在IE 9及以上中工作:第一个孩子从IE7开始工作。@Dima你是对的。请记住,当这个答案发布时,IE9还没有发布。当然,这个答案是在7年前发布的。这只是一个更新。