html - css 动态 nth-child 选择器
问题描述
我有这个元素
<div>
<li>
item 1
</li>
<li>
item 2
</li>
<li>
item 3
</li>
<li>
item 4
</li>
</div>
我总是想展示前两个,因此我这样做了
li {
&:nth-child(1),
&:nth-child(2) {
display: none;
}
}
但是如果项目列表添加了 1 个项目,可见项目将是 3,有什么办法可以始终显示 2?我想我需要修改我的CSS?
解决方案
首先,li
表示“列表项”,因此该元素仅在列表(ol
或ul
)中有效。因此,在我的示例中,我将 更改div
为ul
(无序列表)元素。
其次,你的代码似乎总是隐藏前两个元素,但你说你总是想显示前两个。为此,li
默认情况下使用 隐藏所有元素display: none
,并且只隐藏display: block
前两个:
li {
display: none;
}
li:nth-child(1), li:nth-child(2) {
display: block;
}
<ul>
<li>item 1</li>
<li>item 2</li>
<li>item 3</li>
<li>item 4</li>
</ul>
推荐阅读
- javascript - 在Javascript中获取XML节点的textContent
- reactjs - validateDOMNesting(...): 不能作为子级出现
- bash - 如何在unix中复制包含空格的文件名/路径?
- ruby-on-rails - 如何将参数从角度发布到 Rails 服务器
- javascript - vue/angular/react 暴露了吗?
- r - 如何更改ggplot对象中所有文本相对于当前值的字体大小?
- ruby - 隐藏敏感的 ruby shell 命令
- android - 如何在 Android 10 中列出已保存的网络?
- python - 返回两个字符串列之间的字符串相似度分数 - Pandas
- javascript - 将视频从相机意图传递到 webView