html - 错误 CSS : vertical align in td with input text and image

标签 html css vertical-alignment css-tables

我有一个表格,其中一个单元格包含 2 个元素(输入文本和图像)。我尝试将它们垂直对齐,但不起作用。

我尝试使用vertical-align:middle、顶部边距、填充、尝试设置高度:100% 等...

代码很简单:

<table cellspacing="0" rules="all" border="1" id="Origen" style="width:100%;border-collapse:collapse;">
            <tr>
                <td class="cabeceraDG"> Origen</td><td class="cabeceraDG"> Centro</td><td class="cabeceraDG"> Usuario</td>
            </tr><tr style="white-space:nowrap;">
                <td class="campoOpcional">oficina</td><td class="campoOpcional" align="center" style="width:150px;">
                                <input name="Origen$ctl02$referenciaTextBox" type="text" value="0000" id="Origen_ctl02_referenciaTextBox" class="campoOpcional" onblur="return validate(this)" ref="0991" />
 <input type="image" name="Origen$ctl02$imgBtnGuardarCentro" id="Origen_ctl02_imgBtnGuardarCentro" title="Guardar" AutoPostBack="false" src="https://s30.postimg.org/usmf6nsn5/boton_Abonar.gif" onclick="return ASPxClientEdit.ValidateGroup();  msGuardar();" style="border-width:0px;" />
                             </td><td class="campoOpcional">TEST</td>
            </tr>
        </table>

这是一个存在问题的示例:https://jsfiddle.net/javierif/nmpmj1eh/

最佳答案

vertical-align: middle 添加到 .campoOpcional input 并且它可以工作 - 请参阅下面的演示:

.campoOpcional input {
  vertical-align: middle;
}
<table cellspacing="0" rules="all" border="1" id="Origen" style="width:100%;border-collapse:collapse;">
  <tr>
    <td class="cabeceraDG">Origen</td>
    <td class="cabeceraDG">Centro</td>
    <td class="cabeceraDG">Usuario</td>
  </tr>
  <tr style="white-space:nowrap;">
    <td class="campoOpcional">oficina</td>
    <td class="campoOpcional" align="center" style="width:150px;">
      <input name="Origen$ctl02$referenciaTextBox" type="text" value="0000" id="Origen_ctl02_referenciaTextBox" class="campoOpcional" onblur="return validate(this)" ref="0991" />
      <input type="image" name="Origen$ctl02$imgBtnGuardarCentro" id="Origen_ctl02_imgBtnGuardarCentro" title="Guardar" AutoPostBack="false" src="https://s30.postimg.org/usmf6nsn5/boton_Abonar.gif" onclick="return ASPxClientEdit.ValidateGroup();  msGuardar();"
      style="border-width:0px;" />
    </td>
    <td class="campoOpcional">TEST</td>
  </tr>
</table>

关于html - 错误 CSS : vertical align in td with input text and image,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41384702/

相关文章:

javascript - 如何将复选框(tickbox)的颜色从白色变为黑色?

html - 如何旋转立方体并使用 css html 扩展其边?

html - 同一行中的两个 div 元素

html - 在 div 内垂直居中输入

html - 在 <li> 内对齐 <a>

html - 像 Div 一样的 Google 聊天

html - 样式在 iOS 手机差距应用程序中无法正确显示

CSS 动画 : multiple animations chained to 1 class

javascript - 单击元素外部的任意位置时隐藏元素

html - 如何将图像放在html页面的中心?