html - 如何在div中居中动态变化的网格?

标签 html css css-float

square

我需要创建一个居中的正方形网格,其中包含文本。使用 jQuery 帮助用户将能够添加或删除正方形(在行和列中)。

基本上代码是:

<style>
div.square{
    padding: 5px;
    margin: 5px;
    border: 1px solid green;
    /*display: inline-table; /* IE fail*/
    /*display: inline-block; /* IE fail*/
    float: left;
}
div.row{
    margin: 0 auto;
}
</style>

<div style="width:500px; border:1px solid red; margin: 0 auto">
    <div class="row">
        <div class="square">1</div>
        <div class="square">2</div>
        <div class="square">3</div>
    </div>
    <div style="clear:both"></div>
    <div class="row">
        <div class="square">1</div>
        <div class="square">2</div>
        <div class="square">3</div>
    </div>
    <div style="clear:both"></div>
    <div class="row">
        <div class="square">1</div>
        <div class="square">2</div>
        <div class="square">3</div>
    </div>
    <div style="clear:both"></div>
</div>

最好的方法是什么?

最佳答案

你在找这样的东西吗:

http://jsbin.com/etunuk/1/

  1. float 元素收缩包装,因此它们需要附加宽度。
  2. 要使 float 元素居中,您需要添加它们的宽度 + 内边距 + 边距 + 边框并将该宽度分配给包装器,在本例中为 .row 和中心 .row。

如果去掉边框,需要去掉宽度,行宽1px * 6等。

关于html - 如何在div中居中动态变化的网格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13838550/

相关文章:

css - float 在 Internet Explorer 7 中不起作用

javascript - 在 DOM 加载之前获得焦点输入

css - div不占全高

css - Bootstrap 轮播图像响应但容器/元素没有

php - 带有 PHP 变量的 CSS 背景图像?

css - Firefox float 错误行为

css - 读取 : Center nested DIVs

html - CSS 悬停菜单项

html - Flux with React Audio Component 以一种方式流动

html - CSS 导航栏填充和溢出