html - 根据容器动态改变网格宽度

标签 html css

我有一个由 32x32 大小的插槽组成的网格。 https://www.dropbox.com/s/8pdr8egzghd7wmy/Screenshot%202015-10-25%2023.12.23.png?dl=0

根据它所在元素的大小,我如何添加/删除更多网格槽来填充它? (永远不能在网格槽/瓷砖中途切断)

这是我的代码:

<style>
    .drag-item {
        position: absolute;
        background-image: url('assets/images/objects/desk-1.png');
        background-size: 32px;
        width: 32px; height: 32px;
        cursor: move;
    }
    .drop-target {
        position: absolute;
        width: 480px; height: 480px;
        border:dashed 1px orange;
        background: whitesmoke url('assets/images/objects/grid_64.png') repeat;
        background-size: 32px 32px;

    }
</style>
<div class="panel-body" style="width: 520px; height: 520px;">
        <div class="drop-target">
                <div class="drag-item"></div>
                <div class="drag-item"></div>
                <div class="drag-item"></div>
                <div class="drag-item"></div>
                <div class="drag-item"></div>
        </div>
</div>

最佳答案

使用

.drag-item {
    float: left;
}

代替

.drag-item {
    position: absolute;
}

这将使元素彼此对齐,并在当前行中没有足够空间时跳到下一行。

要确保容器的大小始终为正方形,您将需要 javascript 或大量媒体查询。然后,您可以在容器上使用 overflow: hidden 来隐藏任何溢出的元素行,或者使用 javascript 将它们从 DOM 中完全删除。

关于html - 根据容器动态改变网格宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33336212/

相关文章:

javascript - 如何从可点击的行表创建新页面

jquery - 禁用时的 HTML 选择选项控件未随表单一起提交

css - Bootstrap 4 table tbody 微调器在 chrome 和 Internet explorer 上的位置错误

html - 在 dart 中使用 CSS 隐藏和显示 Web 元素?

css - 为什么 @font-face 在 woff 文件上抛出 404 错误?

javascript - 如何将 div 实例包装在盒子内

javascript - 如何通过 Bootstrap 日期时间选择器使用今天和明天按钮?

Java Applet : Call JavaScript - JSObject. getWindow(this) 总是返回 null

html - JQuery Mobile ListView 使用 slider 按钮在多行上显示文本

javascript - 数据表未检测到ad?