我有一个包含 100 个元素的列表,但我只想使用垂直滚动条一次显示 5 个元素。 <li>
没有固定的高度,可以根据其内容(从数据库中获取)而变化。问题是我可以保持 <ul>
的固定高度它可以显示 5 个元素,但有时当 <li>
中的内容时跨越多行,最后一个元素被下推。
所以问题是,有没有不使用 javascript/jquery 的方法,其中 <ul>
的高度将始终等于前 5 个包含 <li>
元素。
最佳答案
这可能仅靠 CSS 是不可能的。常规滚动条只会在 ul
的高度不适合其内容时弹出,只有当高度不依赖于它的子项(具有高度设计时未知)。
此外,滚动通常是“连续的”:您可以显示元素的一部分。您似乎正在寻找更多“离散”滚动:一个“勾号”向下意味着顶部 li
被“滚动”掉,下一个 li
被添加到底部.
我认为您应该寻找替代方案,或者使用带有滚动条的固定高度 li
,或者带有省略号的溢出和带有全文的弹出窗口的组合,或者一些 JavaScript 解决方案。
关于css - 列表元素应恰好显示 5 个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19676077/