css – 在第一个项目和最后一个项目之后没有边框间距

前端之家收集整理的这篇文章主要介绍了css – 在第一个项目和最后一个项目之后没有边框间距前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个假的桌子我使用border-spacing属性在它们之间创建一个空格.但是这也会在第一个单元格之前和之后的单元格之间创建间距.

我希望它在这两列之间创建一个空格.

HTML

  1. <div class="table">
  2. <div class="cell"></div>
  3. <div class="cell"></div>
  4. </div>

CSS:

  1. .table {
  2. display: table;
  3. width: 100%;
  4. border-spacing: 11px 0;
  5. border: 1px solid #222;
  6. }
  7.  
  8. .cell {
  9. display: table-cell;
  10. width: 50%;
  11. height: 20px;
  12. border: 1px solid #999;
  13. background: #ccc;
  14. }

JSFiddle:http://jsfiddle.net/ACH2Q/

解决方法

您可以使用border-spacing属性为所有表格单元格添加间距.然后使用左边边距和右边距去除父边框的外边距.
  1. .container {
  2. max-width: 980px;
  3. margin: 0 auto;
  4. overflow: hidden;
  5. }
  6.  
  7. .grid {
  8. margin-left: -20px; /* remove outer border spacing */
  9. margin-right: -20px; /* remove outer border spacing */
  10. }
  11.  
  12. .row {
  13. display: table;
  14. table-layout: fixed; /* keep equal cell widths */
  15. width: 100%; /* need width otherwise cells aren't equal and they self collapse */
  16. border-spacing: 20px 0; /* best way to space cells but has outer padding */
  17. }
  18.  
  19. .col {
  20. display: table-cell;
  21. vertical-align: top;
  22. }

唯一的缺点是需要额外的嵌套div,因为表需要宽度100%,边距权不起作用.

  1. <div class="container">
  2. <div class="grid">
  3. <div class="row">
  4. <div class="col">col</div>
  5. <div class="col">col</div>
  6. <div class="col">col</div>
  7. </div>
  8. </div>
  9. </div>

猜你在找的CSS相关文章