CSS水平滚动(简单)

时间:2011-02-01 17:18:40

标签: css scrollbar

假设:

        <div class="pageNavWrap">
            <a class="pageLink" href="#">1</a>
            <a class="pageLink" href="#">2</a>
            <a class="pageLink" href="#">3</a>
            <a class="pageLink" href="#">4</a>
            <a class="pageLink" href="#">5</a>
            <a class="pageLink" href="#">6</a>
            <a class="pageLink" href="#">7</a>
            <a class="pageLink" href="#">8</a>
            <a class="pageLink" href="#">9</a>
            <a class="pageLink" href="#">10</a>
            <a class="pageLink" href="#">11</a>
            <a class="pageLink" href="#">12</a>
            <a class="pageLink" href="#">13</a>
        </div>

使用:

.pageNavWrap{
    background-color:#666;
    text-align:center;
    font-size:16px;
    overflow-x:scroll;
}
a.pageLink{
    color:White;
    padding-left:10px;
    padding-right:10px;
    padding-top:5px;
    padding-bottom:5px;
}

如何阻止向下溢出的链接?我希望它们只溢出-x(已在CSS中指定),以便水平滚动条起作用。

干杯!

4 个答案:

答案 0 :(得分:2)

你需要添加

white-space:nowrap;

浏览器似乎并不都同意继承此属性,因此请尝试将其添加到两个css规则中。

答案 1 :(得分:0)

您是否尝试过将display:inline添加到a.pageLink类

答案 2 :(得分:0)

Overflow-x可能不是最佳选择,因为我们仍在等待所有浏览器采用所有CSS3功能。

从用户体验的角度来看,您真的需要13(或更多)分页结果吗?如果您决定是,那么我会考虑将您的分页结果放入一个列表中并使用css声明显示左侧浮动li:inline;

要强制您的列表始终显示在一行上,请考虑white-space:nowrap

答案 3 :(得分:0)

如果您对浏览器兼容性并不挑剔:

.pageNavWrap
{
  display: table-row;
}
.pageLink
{
  display: table-cell;
}

我也建议white-space: nowrap;,但@Noel Walters打败了我。