2017-08-11 69 views
1

所以我有以下場景,我有一個列表(可以是其他任何東西,我真的不在乎),必須有相同的間距(綠線)並在開始和結束時有相同的間距(紅色箭頭)。所有這些沒有容器有一個固定的位置,所以如果我調整和/或添加更多的元素,他們應該仍然正確跨度。css align元素之間有相同的空間

我已經創建了一個pen到目前爲止我所「取得」的成果。

enter image description here

這是到目前爲止我的代碼:

ul{ 
    width: 90%; 
    border: 1px solid black; 
} 

li{ 
    display: inline-block; 
    margin: 0 100px; 

    border:1px solid orangered; 
} 
li:first-child{ 
    margin-left: 20px; 
} 

li:last-child{ 
    margin-right: 20px; 
} 

我也試圖與顯示:電網,他們合身的紅色邊緣,但不要跨越間距相等它們之間。

這可以在沒有使用JS的情況下實現嗎?

回答

4

您可以ul元素上使用display: flexjustify-content: space-around

ul{ 
 
    width: 100%; 
 
    justify-content: space-around; 
 
    display: flex; 
 
    list-style: none; 
 
    padding: 0; 
 
} 
 

 
li{ 
 
    border: 1px solid red; 
 
    padding: 0; 
 
}
<ul> 
 
    <li>list element 1</li> 
 
    <li>element 2</li> 
 
    <li>e4</li> 
 
    <li>list e5</li> 
 
</ul>

+0

非常感謝約翰,你對此有何評論使我的權利事情!我最終使用了_justify-content:space-between_和向_ul_添加填充。這正是我想要的。 – alexpopa

1
ul{ 
    padding-left: 20px; 
    padding-right: 20px; 
} 
li{ 
    display: inline-block; 
    padding-left: 100px; 
    padding-right: 100px; 
} 
li:first-child{ 
    padding-left: 0px; 
} 
li:last-child{ 
    padding-right: 0px; 
} 

試試吧:)

相關問題