jquery - 使用固定标题滚动表格时出现问题。在拐 Angular 处,标题让位于对齐方式

标签 jquery css html html-table

我已经构建了一个示例代码来固定 header ,它也可以正常工作。问题在于对齐结束时滚动 x 轴滚动。头部移动比 body 对齐更多。请帮我修复它。代码如下。

<body>
<script type="text/javascript">
    function onScrollDiv(div) {
        var headerDiv = document.getElementById("TableHeaderContainer");
        headerDiv.scrollLeft = div.scrollLeft;
    }
</script>
<style>
    td, th
    {
        border:.5px solid;
    }
</style>
<div class="outerTableContainer" style="width:800px;">
    <div id="TableHeaderContainer" style="margin-right:20px;width: 100%;overflow-x: hidden;overflow-y: auto;">
        <table  class="gridHeader" style="position: relative;table-layout: fixed;width: 100%;empty-cells: show;border-collapse: collapse;border-spacing: 0;">
            <colgroup>
                <col style="width: 100px;"/>
                <col style="width: 170px;"/>
                <col style="width: 150px;"/>
                <col style="width: 150px;"/>
                <col style="width: 220px;"/>
                <col style="width: 150px;"/>
            </colgroup>
            <thead>
                <tr>
                    <th>Id</th>
                    <th>Name</th>
                    <th>Surname</th>
                    <th>City</th>
                    <th>Email</th>
                    <th>Date of birth</th>
                </tr>
            </thead>
        </table>
    </div>
    <div class="TableBodyContainer" style="height: 300px; overflow-y: scroll;overflow-x: auto;" onscroll="onScrollDiv(this)">
        <table  class="gridBody" style="table-layout: fixed;width: 100%;empty-cells: show;border-collapse: collapse;border-spacing: 0;">
            <colgroup>
                <col style="width: 100px;"/>   
                <col style="width: 170px;"/>
                <col style="width: 150px;"/>
                <col style="width: 150px;"/>
                <col style="width: 220px;"/>
                <col style="width: 150px;"/>
            </colgroup>
            <tbody>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
                <tr>
                    <td class="ui-widget-content">110</td>
                    <td class="ui-widget-content">Abdul</td>
                    <td class="ui-widget-content">Shaffer</td>
                    <td class="ui-widget-content">Gatlinburg</td>
                    <td class="ui-widget-content">eget.dictum@In.ca</td>
                    <td class="ui-widget-content">09/03/1958</td>
                </tr>
            </tbody>
        </table>
    </div>
</div>

最佳答案

酷找到灵魂。只是将宽度减少到 97%

<div style="overflow-x: hidden; overflow-y: auto; margin-right: 20px; width: 97%;" id="TableHeaderContainer">

关于jquery - 使用固定标题滚动表格时出现问题。在拐 Angular 处,标题让位于对齐方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14620200/

相关文章:

javascript - 带有链接的 slider 图像

html - 左边div的文字根据右边div的内容居中

php - 在 HTML 页面中嵌入数据库中的文本和图像

jquery - 为什么不为我的 Jquery Boxy 插件呈现样式?

javascript - 在更改事件中将文本附加到 Summernote 元素时出现问题

html - Box-Shadow 在我的网站上不起作用

php - 图像未显示在 PHP 页面中

button_to 的 HTML 内容

javascript - jQuery 颜色选择器单击时更改颜色

html - 如何制作一个完全独立于所有 CSS 规则的下拉菜单?