我有一个烦人的问题..我希望列表中的前4项能够编号,但我想将第五项留下编号..这是我的css:
#alternate_navigation ol
{
display:block;
padding:0;
margin:0;
counter-reset: item;
}
#alternate_navigation li
{
display:block;
padding:0px 0px 0px 10px;
margin:0;
background: url('images/list_bg.jpg') no-repeat;
height:19px;
width:99%;
border-bottom:1px solid #B9B5B2;
}
#alternate_navigation li:before
{
content: counter(item) ". ";
counter-increment: item ;
}
结果:
我怎样才能实现最后一项不能这样编号:
和是HTML
<div id="alternate_navigation">
<ol>
<li><a href="#">Online Booking</a></li>
<li><a href="#">Coupon Ordering</a></li>
<li><a href="#">Print Letters</a></li>
<li><a href="#">Send Emails</a></li>
<li><a href="#">View orders</a></li>
</ol>
<div>
感谢您的回复
答案 0 :(得分:1)
在您当前的CSS之后,添加:
#alternate_navigation li:last-child:before {
content: "";
counter-increment: none;
}
应该'重置'最后一个元素的样式。
编辑:我应该提一下,由于:last-child的使用,这在IE8中不起作用。如果你需要IE6 / 7/8兼容性,我会使用类似JQuery的东西,而不是手动插入HTML标记。
答案 1 :(得分:1)
您可以应用css类来重置计数器,如下例所示:
#alternate_navigation li.last:before
{
content: "";
counter-increment: none ;
}
检查我的例子:
答案 2 :(得分:1)
您使用的浏览器是否可能不支持content
,counter-reset
,:before
或counter-increment
?
我很确定IE没有,而且我不确定其他人。如果是这种情况,您只需收到默认的编号列表:简而言之,浏览器会忽略较新的CSS。
答案 3 :(得分:0)
出于好奇,在这种情况下你为什么要使用反复位?为什么不设置
list-style: decimal;
然后为你的html添加一个类到你的<li>
标签,如<li class="last">
?
然后你可以设置
li.last { list-style: none; }