HTML表,可根据需要提供水平和垂直滚动条



一旦浏览器窗口变得太小而无法完全显示表格,我就希望HTML表格显示滚动条(水平和垂直)。

请参阅以下示例:JSFiddle示例

我怀疑主div是有故障的:

    .myMain {
        background-color: #e9edf1;
        overflow: auto;
        width: 100%;
        top: 130px;
        left: 20px;
        bottom: 1px;
        position: absolute;
    }

示例代码的问题如下:如果窗口变得太小,则会出现水平滚动条,但只有在用鼠标调整浏览器窗口大小时,表的几个像素已经被剪切/不可见后,才会出现水平滚动栏。它显示在页面的底部,但我希望它直接显示在表的底部。垂直滚动条根本不会出现。我不想更改对用户可见的页面布局,所以这不是一个选项。

有几件事让我很失望,主要是推动div前进的绝对位置和左侧。因为你把它设置为绝对的,它会忽略其他元素,并以自己想要的方式做出反应。

此外,通过溢出禁用滚动:隐藏在html/body上会切断div的一部分,并将其绝对定位。

我做了一些更改,见下文。但请检查链接,让我知道现在是否已经实现了所需的行为。

https://jsfiddle.net/0ksb8s8x/1/

html, body {
        font-family: Segoe UI, Tahoma, Arial;
        font-size: 11px;
        margin: 0;
        padding: 0;
        background-color: #e9edf1;
        overflow:auto;
        width:100%;
        height:100%;
    }
.myMain {
          background-color: #e9edf1;
          overflow: auto;
          width: 105%;
          padding: 20px;
          top: 0px;
          left: 0px;
          bottom: 1px;
          position: relative;
    }

我终于找到了一个不完美但有效的解决方案:

我使用了Joe Corby的Fiddle,只更改了CSS中的以下部分:

        .myMain {
        background-color: #e9edf1;
        overflow: auto;
        padding-left: 30px;
        padding-top: 20px;
        position: absolute;
        top: 120px;
        bottom: 0px;
        left: 0px;
        right: 0px;
        width: auto;
        height: auto;
    }

滚动条显示在浏览器窗口的底部和右侧(不是表的右侧),但至少它可以工作。

相关内容

  • 没有找到相关文章

最新更新