html - 在弹性列表项之间设置空格
问题描述
我有一个导航,看起来有点像下面的这个,li
里面的项目是flex
项目。此菜单是从外部呈现的,我无法将任何项目包装在专用容器内。
我想要实现的是space-between
在最后一项和左侧的其他项之间进行设置。我已经尝试对margin-left
最后一个孩子使用 a ,但这不是最好的解决方案。
是否有一个 CSS 选项可以以某种方式“包装”最后一项,所以在那个和左边的之间总是有空格?
.container {
max-width: 1000px;
background-color: lightblue;
}
ul {
display: flex;
justify-content: space-between;
}
.last {
background: red;
}
<div class="container">
<ul>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li class="last">Last Item</li>
</ul>
</div>
解决方案
margin-left
在最后一个元素上使用是一个很好的解决方案。但是,您可以使用选择器改进:last-child
您的实现:
ul li:last-child {
margin-left: 10px;
}
而不是手动将last
班级分配给最后一个孩子。
编辑:如果你的意思是你希望你的最后一个孩子一直向右对齐。您可以将它们分成不同的列表,并使用justify-content: space-between
:
.container {
max-width: 1000px;
background-color: lightblue;
display: flex;
justify-content: space-between;
}
ul {
display: flex;
}
ul li {
width: 3rem;
}
.right li {
background-color: red;
}
<div class="container">
<ul class="left">
<li>Item</li>
<li>Item</li>
<li>Item</li>
</ul>
<ul class="right">
<li>Item</li>
</ul>
</div>
推荐阅读
- python - 数据库只能通过jumphost访问时如何通过Python连接MySQL
- python - 将多个嵌套文件变成一个文件(连接它们)
- javascript - 如何在不离开页面的情况下通过单击按钮显示 php 响应?
- java - java - 如何在Java swing中用背景色填充整个面板?
- c# - 从 azure 函数连接到 Azure 数据湖 Gen 2
- primeng - Primeng 多选需要带有“全选”文本的全选复选框
- firebase - 如何使用 ML Kit 云文本识别器进行颤振?
- ruby-on-rails - 如何验证文件以在 ruby 或 ruby on rails 中检查多个扩展名
- r - 使用 as.data.frame 形成数据帧时删除 0
- html - 有没有办法使这些列表元素大小相同?