我有一组<li>
元素对齐,以便它们形成两列。使用nth-last-child
and nth-child(even)
- 或任何其他选择器的组合 - 是否可以将样式应用于:a)最后两个(假设有相同数量的<li>
's)或 b)仅最后一个(假设有一个奇数的个数<li>
)
有关示例,请参见我的小提琴或使用下面的代码。我用黄色突出显示了应该应用该样式的那些。
我正在寻找没有服务器端解决方案、html 修改或 Javascript,我很想知道它是否可以单独使用 CSS 完成。浏览器兼容性不是问题,所以一直使用 CSS3。
代码
HTML
<ul>
<li>Hello World</li><!--
--><li>Hello World</li><!--
--><li>Hello World</li><!--
--><li>Hello World</li><!--
--><li>Hello World</li><!--
--><li>Hello World</li><!--
--><li style="background: yellow">Hello World</li><!--
--><li style="background: yellow">Hello World</li>
</ul>
<br />
<ul>
<li>Hello World</li><!--
--><li>Hello World</li><!--
--><li>Hello World</li><!--
--><li>Hello World</li><!--
--><li>Hello World</li><!--
--><li>Hello World</li><!--
--><li style="background: yellow">Hello World</li>
</ul>
CSS
ul {
padding: 10px;
width: 400px;
background: red;
}
li {
width: 200px;
display: inline-block;
background: blue;
}