CSS - 如果第二个 <td> 是多行的,如何修复顶部表格中的第一个 <td>?

Posted

技术标签:

【中文标题】CSS - 如果第二个 <td> 是多行的,如何修复顶部表格中的第一个 <td>?【英文标题】:CSS - how to fix first <td> in table on top if the second <td> is multiline? 【发布时间】:2017-04-29 13:24:27 【问题描述】:

在下面的这段代码中,您将看到第一个td 中的“上传图片”文本已向下移动(因为下一个td 中的多行输入)。但我希望将此文本固定在顶部。 我该怎么做?

<table>
  <tr>
    <td> Upload Image </td>
    <td> <input type="file" name="images[]" /> <br>
      <input type="file" name="images[]" /> <br>
      <input type="file" name="images[]" /> <br>
      <input type="file" name="images[]" /> <br>
    </td>
  </tr>
</table>

【问题讨论】:

使用vertical-align: top td。 【参考方案1】:

你需要这个吗?

<table>
<tr style="display:flex;">
<td style="flex:1;"> Upload Image </td>
<td> <input type="file" name="images[]" /> <br>
     <input type="file" name="images[]" /> <br>
     <input type="file" name="images[]" /> <br>
     <input type="file" name="images[]" /> <br>
</td>

【讨论】:

【参考方案2】:

vertical-align: toptd 结合使用 - 请参阅下面的演示:

table tr > td:first-child 
  vertical-align: top;
<table>
  <tr>
    <td>Upload Image</td>
    <td>
      <input type="file" name="images[]" />
      <br>
      <input type="file" name="images[]" />
      <br>
      <input type="file" name="images[]" />
      <br>
      <input type="file" name="images[]" />
      <br>
    </td>
  </tr>
</table>

【讨论】:

【参考方案3】:

使用下面的代码,您可以在第一行顶部实现上传图片

<table>
  <tr>
    <td colspan="4" valign="top"> Upload Image </td>
    <td> <input type="file" name="images[]" /> <br>
         <input type="file" name="images[]" /> <br>
         <input type="file" name="images[]" /> <br>
         <input type="file" name="images[]" /> <br>
    </td>
  </tr>
</table>

【讨论】:

以上是关于CSS - 如果第二个 <td> 是多行的,如何修复顶部表格中的第一个 <td>?的主要内容,如果未能解决你的问题,请参考以下文章

第二个算法包含真分数

我用 XPath 选择第一个/第二个或第四个 td 内容

jquery第一个TD里面的checkbox得到第二个TD里面的checkbox

使用 jQuery 获取第二个孩子

CSS 样式 td 元素取决于 td 宽度

如果第二个孩子有某个班级,则不同的CSS样式[重复]