如何为具有多列和右对齐的表添加水平滚动?

时间:2018-04-05 08:21:28

标签: html css html-table

我添加了一个div,设置了溢出样式并将表放在div中。该表有多列。因此表宽度大于其父容器(div)。我可以看到当我为表格设置左对齐属性时出现水平滚动。但是,当我将表的align属性设置为Right时,水平滚动没有出现。

无论如何要解决它?我的示例代码如下所示。

    table, th, td {
        border: 1px solid black;
    }
    <!DOCTYPE html>
    <html>
    <head>
    <title>
    Test Table
    </title>
    </head>
    <body>
    <div style="overflow: auto;border: 1px solid red;width: 90%; margin-left: 5%;">
    <table align="right">
      <tr>
        <th>Month</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
      </tr>
      <tr>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>$100</td>
      </tr>
      <tr>
        <td>February</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>$80</td>
      </tr>
    </table>
    </div>
    </body>
    </html>

1 个答案:

答案 0 :(得分:0)

如果您添加<div>样式direction:rtl,它可以正常工作(如果这是您预期的行为:) :):

table, th, td {
        border: 1px solid black;
    }
<!DOCTYPE html>
    <html>
    <head>
    <title>
    Test Table
    </title>
    </head>
    <body>
    <div style="overflow: auto; direction: rtl; border: 1px solid red; width: 90%; margin-left: 5%;">
    <table align="right">
      <tr>
        <th>Month</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
        <th>Savings</th>
      </tr>
      <tr>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>$100</td>
      </tr>
      <tr>
        <td>February</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>January</td>
        <td>$80</td>
      </tr>
    </table>
    </div>
    </body>
    </html>