如何在列表中的元素之间具有相同的 space?
How to have same space between elements in list?
我正在尝试在 li 元素之间添加相同的 space,但我不知道该怎么做。有人能指出我正确的方向吗?提前致谢
.container {
width: 600px;
height: 500px;
margin:auto;
padding:10 ;
border: 1px solid #ccc;
}
#ul_top {
display: flex;
justify-content:space-around;
list-style-type:none;
}
li:not(:first-child) {
padding-right: 50px;
color:red;
}
.title {
padding-top: 80px;
}
.horizontal-line {
width: 490px;
margin: auto;
padding-left:10px;
border-top: 1px solid #cccccc;
position: relative;
top:-20;
}
<div class="container">
<div class="title"></div>
<div class="horizontal-line"></div>
<ul id ="ul_top">
<li>text1</li>
<li>text2</li>
<li>text3</li>
<li>text4</li>
<li>text5</li>
<li>text6</li>
</ul>
</div>
我希望每个 li 元素和最后一个元素 (text6) 之间的相同 space 距离向右移动一点,以便与上面的水平线对齐。
使用display: flex
和justify-content: space-between/space-around
。
此外,ul
有一个默认填充,所以只需用 padding: 0
覆盖它即可。
我删除了padding-right
:not(:first-child)
您可以调整 horizontal-line 和 flexbox 的宽度相同,当您在两者之间使用 space 时,行和文本对齐。
.container {
width: 600px;
height: 500px;
margin: auto;
padding: 10;
border: 1px solid #ccc;
}
#ul_top {
display: flex;
justify-content: space-between;
list-style-type: none;
padding: 0;
width: 90%;
margin: 20px auto;
}
li:not(:first-child) {
color: red;
}
.title {
padding-top: 80px;
}
.horizontal-line {
width: 90%;
margin: auto;
padding-left: 10px;
border-top: 1px solid #cccccc;
position: relative;
top: -20;
}
<div class="container">
<div class="title"></div>
<div class="horizontal-line"></div>
<ul id="ul_top">
<li>text1</li>
<li>text2</li>
<li>text3</li>
<li>text4</li>
<li>text5</li>
<li>text6</li>
</ul>
</div>
试试这个
.container {
width: 600px;
height: 500px;
margin: auto;
padding: 10;
border: 1px solid #ccc;
}
#ul_top {
display: flex;
justify-content: space-between;
list-style-type: none;
padding: 0;
width: 90%;
margin: 20px auto;
}
li:not(:first-child) {
color: red;
}
.title {
padding-top: 80px;
}
.horizontal-line {
width: 90%;
margin: auto;
border-top: 1px solid #cccccc;
position: relative;
top: -20;
}
<div class="container">
<div class="title"></div>
<div class="horizontal-line"></div>
<ul id="ul_top">
<li>text1</li>
<li>text2</li>
<li>text3</li>
<li>text4</li>
<li>text5</li>
<li>text6</li>
</ul>
</div>
我正在尝试在 li 元素之间添加相同的 space,但我不知道该怎么做。有人能指出我正确的方向吗?提前致谢
.container {
width: 600px;
height: 500px;
margin:auto;
padding:10 ;
border: 1px solid #ccc;
}
#ul_top {
display: flex;
justify-content:space-around;
list-style-type:none;
}
li:not(:first-child) {
padding-right: 50px;
color:red;
}
.title {
padding-top: 80px;
}
.horizontal-line {
width: 490px;
margin: auto;
padding-left:10px;
border-top: 1px solid #cccccc;
position: relative;
top:-20;
}
<div class="container">
<div class="title"></div>
<div class="horizontal-line"></div>
<ul id ="ul_top">
<li>text1</li>
<li>text2</li>
<li>text3</li>
<li>text4</li>
<li>text5</li>
<li>text6</li>
</ul>
</div>
我希望每个 li 元素和最后一个元素 (text6) 之间的相同 space 距离向右移动一点,以便与上面的水平线对齐。
使用display: flex
和justify-content: space-between/space-around
。
此外,ul
有一个默认填充,所以只需用 padding: 0
覆盖它即可。
我删除了padding-right
:not(:first-child)
您可以调整 horizontal-line 和 flexbox 的宽度相同,当您在两者之间使用 space 时,行和文本对齐。
.container {
width: 600px;
height: 500px;
margin: auto;
padding: 10;
border: 1px solid #ccc;
}
#ul_top {
display: flex;
justify-content: space-between;
list-style-type: none;
padding: 0;
width: 90%;
margin: 20px auto;
}
li:not(:first-child) {
color: red;
}
.title {
padding-top: 80px;
}
.horizontal-line {
width: 90%;
margin: auto;
padding-left: 10px;
border-top: 1px solid #cccccc;
position: relative;
top: -20;
}
<div class="container">
<div class="title"></div>
<div class="horizontal-line"></div>
<ul id="ul_top">
<li>text1</li>
<li>text2</li>
<li>text3</li>
<li>text4</li>
<li>text5</li>
<li>text6</li>
</ul>
</div>
试试这个
.container {
width: 600px;
height: 500px;
margin: auto;
padding: 10;
border: 1px solid #ccc;
}
#ul_top {
display: flex;
justify-content: space-between;
list-style-type: none;
padding: 0;
width: 90%;
margin: 20px auto;
}
li:not(:first-child) {
color: red;
}
.title {
padding-top: 80px;
}
.horizontal-line {
width: 90%;
margin: auto;
border-top: 1px solid #cccccc;
position: relative;
top: -20;
}
<div class="container">
<div class="title"></div>
<div class="horizontal-line"></div>
<ul id="ul_top">
<li>text1</li>
<li>text2</li>
<li>text3</li>
<li>text4</li>
<li>text5</li>
<li>text6</li>
</ul>
</div>