列之间的基础边距不起作用

Foundation margin between columns not working

首先,我知道这是一个重复的问题 (here or ),但解决方案对我来说并不奏效。

这是我的问题:我的网页结构如下:

<div class="row">
    <div class="small-1 columns">...</div>
    <div class="small-8 columns">...</div>
    <div class="small-3 columns">...</div>
</div>

在我的 8 列中,我有一个 Panel 容器,在其中:

<div class="row">
    <div class="small-1 columns">COLOR</div>
    <div class="small-2 columns">TITLE</div>
    <div class="small-1 columns">NAME</div>
    <div class="small-2 columns">SURNAME</div>
    <div class="small-2 columns">ADDRESS</div>
    <div class="small-2 columns">POSTAL CODE</div>
    <div class="small-2 columns">SUMMARY</div>
</div>

内容如下:

我希望每列都有一个空格分隔符。但是,如果我尝试添加这个差距(边距 属性):

有什么想法吗?

提前致谢!

Foundation 在 .columns 上结合左右填充和百分比宽度创建间隙(又名装订线)。从foundation.css看这个:

.column, .columns {
    padding-left: 0.625rem;
    padding-right: 0.625rem;
    width: 100%;
    float: left;
}
.small-1 { width: 8.33333%; }
.small-2 { width: 16.66667%; }
...

通过向列添加边距,您扰乱了宽度并使 .row > 100% 这就是它中断的原因。作为一般规则,我建议永远不要向 .columns 添加边距,因为它会破坏网格。

您有几个选择:

1 - 折叠该行并在子列中添加您自己的填充 类

<div class="row collapse">
    <div class="small-1 columns"><div class="inner">COLOR</div></div>
    <div class="small-2 columns"><div class="inner">TITLE</div></div>
    <div class="small-1 columns"><div class="inner">NAME</div></div>
    <div class="small-2 columns"><div class="inner">SURNAME</div></div>
    <div class="small-2 columns"><div class="inner">ADDRESS</div></div>
    <div class="small-2 columns"><div class="inner">POSTAL CODE</div></div>
    <div class="small-2 columns"><div class="inner">SUMMARY</div></div>
</div>

.inner {background:#666; margin:0 5px; padding:5px;}

2 - 看起来您正在尝试创建各种图表。对表格数据使用实际的 HTML table 并没有什么可耻的(这就是它的用途)。 Foundation 的 tables 默认样式实际上非常好。