javascript - 表格不超过窗口宽度

标签 javascript html css

我有一个这样创建的动态表:

function genDivs(divs){ 
    var root = document.createElement("table");
    for(var x = 0; x < divs; x++){ 
        var row = document.createElement("tr");
        for(var y = 0; y <= divs; y++){ 
            var cell = document.createElement("td"); 
            cell.textContent = x+","+y;
            row.appendChild(cell); 
        } 
        root.appendChild(row); 
    }
    var main = document.getElementById("container");
    document.body.appendChild(root);
}
genDivs(32);

并使用这种样式:

<style>
    table {
        border-collapse: collapse;
    }
    td {
        width:100px;
        height:100px;
        border:1px solid black;
    }
</style>

表格只能适应我的屏幕宽度(参见此处:zombie map)

但是如果我将窗口越拖越宽,它最终会适合它的 CSS 大小。这不是我需要的,我希望它会滚动而不是缩小 td 宽度。有谁知道如何让我的表格有一个“固定”大小(取决于单元格数),如果它超过窗口宽度就会滚动?

最佳答案

Fiddle

要根据单元格计数设置表格大小,您可以执行以下操作

function genDivs(divs){ 
var root = document.createElement("table");
for(var x = 0; x < divs; x++){ 
    var row = document.createElement("tr");
    for(var y = 0; y <= divs; y++){ 
        var cell = document.createElement("td"); 
        cell.textContent = x+","+y;
        row.appendChild(cell); 
    } 
    root.appendChild(row); 
}
    root.style.width=String(divs*100)+"px";
    root.style.height=String(divs*100)+"px";
    var main = document.getElementById("container");
    document.body.appendChild(root);
}
genDivs(32);

由于您希望单元格为 100px 乘以 100px,您只需将 TABLE 高度和宽度设置为 divs 的 100 倍(单元格数量).

关于javascript - 表格不超过窗口宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21415362/

相关文章:

javascript - 按下按钮时使背景处于非事件状态

javascript - 用户使用 Firebase 身份验证登录后如何重定向?

javascript - 如何在固定的 <div> 中滚动 <div>

javascript - 在表单内(Angular 5),控件的触摸状态会相互影响,为什么?

javascript - 动态 JavaScript If 语句

css - 背景渐变 CSS 在 IE10 中不起作用

javascript - 如何在 AudioBufferSourceNode 中设置循环以精确匹配底层缓冲区中的特定偏移量?

html - 将 CSS 和 HTML 中的日期获取到 PDF 页脚

css - 根据设备调整 Bootstrap NavBar 位置

css - 保持 Popover 相对于按钮居中