overflow-x:滚动似乎不起作用

overflow-x: scroll doesn't seem to work

我很困惑为什么这不起作用。我正在尝试在 div.queue-wrapper 内实现水平滚动,所以 div.queue-month 如果没有足够的 space (这是他们目前所做的),请不要一个接一个地倒下。

HTML

        <div class="queue-container">
            <div class="queue-wrapper clearfix">
                <div class="queue-month">
                    1
                </div>
                <div class="queue-month">
                    2
                </div>
                <div class="queue-month">
                    3
                </div>
            </div>
        </div> <!-- .queue-container -->

CSS

.queue-container {
    height: 260px;
    width: 100%;
    background-color: grey;
    box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.5);
}

.queue-wrapper {
    overflow-x: scroll;
    background: yellow;
    width: 100%;
}

.queue-month {
    width: 385px;
    float: left;
    background-color: orange;
}

jsfiddle 例子

我正在使用 bootstrap 3,但由于它在 fiddle 中不起作用,我认为它与问题无关。

您可以使用 white-space 作为 nowrap 并使用 inline-block display 而不是 float:

.queue-container {
    height: 260px;
    width: 100%;
    background-color: grey;
    box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.5);
}

.queue-wrapper {
    overflow-x: auto;/*changed from scroll*/
    background: yellow;
    width: 100%;
    white-space: nowrap;/*using nowrap*/
}

.queue-month {
    width: 385px;
    display: inline-block;/*instead of float:left;*/
    background-color: orange;
}
<!-- Dragable queue section -->
        <div class="queue-container">
            <div class="queue-wrapper clearfix">
                <div class="queue-month">
                    1
                </div>
                <div class="queue-month">
                    2
                </div>
                <div class="queue-month">
                    3
                </div>
            </div>
        </div> <!-- .queue-container -->

你什么都不给滚动,试试这个:

CSS

.queue-container {
    height: 260px;
    width: 100%;
    background-color: grey;
    box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.5);
}

.queue-wrapper {
  background: yellow;
  width: auto;
  overflow-x: scroll;
  overflow-y: hidden;
  white-space: nowrap;
}

.queue-month {
  width: 385px;
  background-color: orange;
  display: inline-table;
}

https://jsfiddle.net/g1rLkfjr/2/