HTML CSS表显示底部的行而不是表的顶部

时间:2013-08-08 02:23:07

标签: html html-table sass

我正在尝试完成格式化动态构建的表格。在最后一页上,当表格稀疏时,因为填充表格所需的行数少于行,因此行显示在表空间的底部而不是顶部。我试图纠正这个失败的原因。如何在顶部显示这些行?

这似乎并不重要,但该表是由will_paginate Ruby gem构建的。我说没关系因为当我看HTML时,它只是一张桌子。没有任何东西能够实现这一目标。表格大小格式化为显示10行。如果只有3个,它们就像你期望的那样被列为3行。所以,我认为这只是一个HTML / CSS格式问题。

显示的表格: Show the table has it displays

SCSS:

.feeds {
  list-style: none;
  margin: 0;
  text-align: left;
  table-layout: fixed;
  width: 700px;
  height: 250px;
  overflow: auto;
  vertical-align: top;
  li {
    overflow: auto;
    padding: 10px 0;
    border-top: 1px solid $grayLighter;
    &:last-child {
      border-bottom: 1px solid $grayLighter;
    }
  }
  table, thead, th, tr, tbody, tfoot {
    vertical-align: top;
  }
  td {
    vertical-align:top;
    height: 1ex;
    overflow-x: auto
  }
}

HTML:

    <table class="feeds">
      <tbody><tr>
        <th id="url_cell"><a class="sortfield asc" href="/feeds?commit=Search&amp;direction=desc&amp;search=&amp;sort=feed_url&amp;utf8=%E2%9C%93">URL</a></th>
        <th><a href="/feeds?commit=Search&amp;direction=asc&amp;search=&amp;sort=feed_etag&amp;utf8=%E2%9C%93">Etag</a></th>
        <th><a href="/feeds?commit=Search&amp;direction=asc&amp;search=&amp;sort=feed_update&amp;utf8=%E2%9C%93">Update date</a></th>
      </tr>
          <tr>
            <td id="url_cell"><a href="http://www.skalith.net/rss">http://www.skalith.net/rss</a></td>
            <td id="etag_cell">RZWAFDMVHPXHWECK</td>
            <td id="update_cell">August  5, 2013</td>
          </tr>
          <tr>
            <td id="url_cell"><a href="http://www.viva.name/rss">http://www.viva.name/rss</a></td>
            <td id="etag_cell">KFIEQYAUWMUHUJNY</td>
            <td id="update_cell">August  5, 2013</td>
          </tr>
    </tbody></table>

1 个答案:

答案 0 :(得分:5)

标题行正在垂直填充空格(由于你的table-layout,这应该是它应该做的。如果用<thead>包装它,然后只用{{{{}}包裹表格的主体1}}它会正确对齐它。但是,因为你有<tbody>table-layout: fixed,剩下的行会增长以弥补差异。

请参阅:http://codepen.io/chrisrockwell/pen/gGmFq

如果没有完整的行集,可以在表中添加一个类吗?这样你就可以删除高度声明。

其他选择:

  1. 我猜你需要有一个设定的高度,但如果没有,你可以删除它。

  2. 将表格包裹在height: 250px中,并将您的身高和溢出分配给div:

  3. <div>
    <div class="wrap">
      <table class="feeds"></table>
    </div>
    

    以下是选项2的示例:http://codepen.io/chrisrockwell/pen/wpyfI