首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >css中网格结构中边界的应用

css中网格结构中边界的应用
EN

Stack Overflow用户
提问于 2012-07-19 17:26:43
回答 4查看 241关注 0票数 0

我正在尝试创建一个具有相同高度和宽度的div的网格结构,但无法应用边框CSS

代码语言:javascript
运行
复制
 .Container {
    width:1000px;
    position:relative;
    margin:0 auto;
}
.RowContainer {
    overflow:hidden;
    position:relative;
    height:200px;
    clear:both;
}
.RowContainer .Cell {
    position:relative;
    float:left;
    height:100%;
    width:200px;
    border:1px solid Black;


}

HTML

代码语言:javascript
运行
复制
    <div class="Container">     
    <div class="RowContainer">
      <div class="Cell"><h1>lorum ipsum lorum ipsum</h1><p>lorum ipsum epsum</p> </div>
        <div class="Cell"><h1>lorum ipsum</h1><p>lorum ipsum epsum</p></div>
        <div class="Cell"><h1>lorum ipsum lorum ipsum</h1><p>lorum ipsum epsum
        </p>  </div>
        <div class="Cell"><h1>lorum ipsum</h1><p>lorum ipsum epsum</p></div>
    </div>
    <div class="RowContainer">
        <div class="Cell"><h1>lorum ipsum lorum ipsum</h1><p>lorum ipsum epsum
        </p></div>
        <div class="Cell"><h1>lorum ipsum</h1><p>lorum ipsum epsum</p></div>
        <div class="Cell"><h1>lorum ipsum</h1><p>lorum ipsum epsum</p></div>
        <div class="Cell"><h1>lorum ipsum</h1><p>lorum ipsum epsum</p></div>
    </div>  
    <div style="clear:both"></div>    
</div>

我有两个问题

  1. 边框未显示在最后一行。

  1. 此外,尽管对所有人都应用了相同的边框属性,但边框宽度似乎是不平等的。
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-07-19 17:32:45

底部边框在中也没有显示,因为行中有height: 100%.Cell上,overflow: hidden.Container上。在第一行下面看到的是第二行的顶部边框。

如果在具有height: 100%;height: 200px元素的子元素上设置overflow: hidden,然后将border of 1px设置为该子元素,则该边框将在所有方面加起来。

它使子元素垂直地占据202px。这是来自顶部边框的1px+ 200px,来自高度+ 1px,来自底部边框。

但是父元素的高度仅为( 200pxoverflow: hidden ),这意味着从子元素的垂直方向上,您看到的是子元素高度的1px顶部边框和199px。还有1px的高度和1px的底部边框是隐藏的。

第二个垂直边框比第一个垂直边框更厚,因为第一个单元格的右1px边框和第二个单元格的左1px边框都有。

这将解决http://dabblet.com/gist/3145644的问题

票数 1
EN

Stack Overflow用户

发布于 2012-07-19 17:32:36

如果您想要创建类似于表的东西,为什么不直接使用表呢?

代码语言:javascript
运行
复制
<table class="container">     
    <tr>
        <td><h1>lorum ipsum lorum ipsum</h1><p>lorum ipsum epsum</p></td>
        <td><h1>lorum ipsum</h1><p>lorum ipsum epsum</p></td>
        <td><h1>lorum ipsum lorum ipsum</h1><p>lorum ipsum epsum</p></td>
        <td><h1>lorum ipsum</h1><p>lorum ipsum epsum</p></td>
    </tr>
    <tr>
        <td><h1>lorum ipsum lorum ipsum</h1><p>lorum ipsum epsum</p></td>
        <td><h1>lorum ipsum</h1><p>lorum ipsum epsum</p></td>
        <td><h1>lorum ipsum lorum ipsum</h1><p>lorum ipsum epsum</p></td>
        <td><h1>lorum ipsum</h1><p>lorum ipsum epsum</p></td>
    </tr>
</table>
票数 3
EN

Stack Overflow用户

发布于 2012-07-19 17:35:24

overflow:hidden on .RowContainer隐藏了.Cell div上的边框,因为边框是在.Cell的框外绘制的,该框设置为100%的高度。删除overflow:hidden应该会再次显示它。

至于不平等的边框,我不能肯定地说,因为你没有提供一个可以查看的细节,但我猜你的意思是,单元格之间的边框比它应该的更厚--因为每个.Cell都有一个边框,所以左/右边框相邻,显示出一个2px边框。

您可以通过只在每个.Cell的顶部和左侧设置边框,然后在.Container的底部和右侧设置边框来解决这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11566156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档