我有一個非常長的名單li
大於30項。當我在ul menu
下拉列表中顯示時,該列表垂直向下延伸,這要求瀏覽器窗口向下滾動以查看每個列表元素。如何在li元素的水平組中顯示列表?
我想要做的是將列表中的每一行分組到顯示3 li
元素而不是每行一個在ul菜單中。
我所嘗試的是將菜單使用的樣式.sub-menu li
設置爲display: inline
as suggested here以在線顯示li元素,但這對水平排序沒有影響。
所以不是這樣:
- 吉姆
- 簡
- 傑克
- 瓊斯
- 傑克遜
- 的Jhonny
它會顯示這樣的(其中列表中的每個三個華里要素水平分組):
簡 約翰 賈裏德
吉姆 詹姆斯 瓊斯
問:
如何在n個元素的水平分組中顯示列表?
在我目前的設置我用這個CSS的菜單:
nav li:hover .sub-menu {
z-index: 2;
opacity: 1;
min-width: 100px;
}
.sub-menu {
width: 100%;
padding: 0px 0px;
position: absolute;
top: 100%;
left: 0px;
z-index: -1;
opacity: 0;
overflow: hidden;
transition: opacity linear 0.15s;
box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
background: #425563;
text-align: center;
display: inline-block;
}
.sub-menu li {
display: inline-block;
font-size: 15px;
float: left;
margin-top: 0px;
}
.sub-menu li a {
padding: 10px 5px;
display: block;
text-decoration: none;
text-align: left;
z-index: 3;
}
.sub-menu li a:hover, .sub-menu .current-item a {
background: #01a982;
-moz-box-shadow: 0 0 5px 0px #888;
-webkit-box-shadow: 0 0 5px 0px #888;
box-shadow: 0 0 5px 0px #888;
color: #000;
}
.sub-menu li a input {
display: inline-block;
}
這是使用子菜單css樣式的UL名單:
<ul class="sub-menu" id="assetNameMenu">
@* li elements created in script *@
</ul>
我試着子的李風格編輯菜單但名單仍然相同,沒有分成三個。任何想法,爲什麼這是?這是更新的CSS http://hastebin.com/ijikonawah.css,這是瀏覽器中的元素的屏幕截圖..http://picpaste.com/pics/menu-1M9luEus.1471444731.PNG –
不知道,但我不能從代碼圖像中分辨出很多東西。你必須做一個適當的演示。 –
我再一次通過評論'.sub-menu'屬性來測試。註釋掉'position:absolute;'將鼠標懸停在列表上時,以三個分組正確地呈現列表項。但刪除此位置選項會導致其他菜單元素間隔很遠,而不是內聯http://picpaste.com/menu-9HrKc4NS.PNG。在離開此位置屬性時顯示菜單正確內聯,但li元素在盤旋時未分組http://picpaste.com/pics/menu-9QZGmRkZ.1471447583.PNG –