我的容器,與水平滾動的元素,是這樣的:浮動:左元素裏面水平滾動的容器破裂佈局
<header id="id-grid-top-menu">
<div class="cd-dropdown-wrapper">
<a class="cd-dropdown-trigger">CPB1</a>
<nav class="cd-dropdown" style="top: 55px; left: 30px;">
...nav code here...
</nav>
</div>
<div class="cd-dropdown-wrapper">
<a class="cd-dropdown-trigger">CPB1</a>
<nav class="cd-dropdown" style="top: 55px; left: 30px;">
...nav code here...
</nav>
</div>
<div class="cd-dropdown-wrapper">
<a class="cd-dropdown-trigger">CPB1</a>
<nav class="cd-dropdown" style="top: 55px; left: 30px;">
...nav code here...
</nav>
</div>
.......more divs.....
</header>
CSS:
#id-grid-top-menu {
overflow-x: scroll;
overflow-y: hidden;
white-space: nowrap;
height: 10% !important;
background-color: white;
display: block;
}
.cd-dropdown-wrapper {
float: none;
height: initial !important;
position: static !important;
margin: 15px 15px !important;
display: inline-block;
}
眼下,這看起來像此:
(對不起,忽略CPB2)
這有.cd-dropdown-wrapper
水平線,容器讓它溢出與overflow-x: scroll
。但是,我不得不在.cd-dropdown-wrapper
元素上設置float: none
。如果我有少的div,它看起來像這樣:
的元素都居中。顯然,這看起來不太好,我希望這些元素排在左邊。但是,如果我在元素上設置了float: left
,則它們不再排隊並溢出;他們只是環繞着。
.cd-dropdown-wrapper {
float: left;
}
我怎麼會做它,所以它會在左邊排隊,但還是如果它擴展屏幕寬度會溢出?
編輯:
我發現了一些有趣的事情。如果在#id-grid-top-menu
中,我設定了一個固定的寬度 - 比方說100em。如果我將float: left
應用於.cd-dropdown-wrapper
,它會排在左邊,並且會溢出!然而,水平滾動條不顯示...
@MingleLi你不能將固定寬度設置爲標題,因爲裏面的浮動元素......你總是需要另一個固定寬度的容器來使滾動條出現 – Fabio
這不起作用。這會導致滾動條能夠滾動通過div。 –
奇怪,在這個例子中看起來不錯:https://jsfiddle.net/fabio1983/Lzrke0pu/3/ – Fabio