使用css垂直居中按钮

Din*_*ino 20 html css layout

我试图在表格单元格中进行一个简单的输入按钮居中对齐.

我的标记是:

<table width="500" border="1">
  <tr>
    <td width="390">XXXXXXXXX</td>
    <td width="110" rowspan="2" valign="middle"><input type="button" value="submit"></td>
  </tr>
  <tr>
    <td>YYYYYYYY</td>
  </tr>
</table>
<br /><br />
<div style="width:500px;">
  <div style="float:left;width:390px;">
    <div>XXXXXXX</div>
    <div>YYYYYYY</div>
  </div>
  <div style="vertical-align:middle;width:110px;float:right;">
    <div><input type="button" value="submit"></div>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

可以在这里查看:

http://jsfiddle.net/tP4sD/

我已经做了一个表格版本,显示了我想要实现的布局.请注意,由"XXXXX"或"YYYYYY"表示的文本具有可变长度.

sqr*_*ram 37

http://jsfiddle.net/8v8gLn4y/

.container {
  background: lightblue;
  display: table;
  width:100%;
}
        
input[type=button] {    
  display: block;
  width: 50%;
  margin: 0 auto;
}
        
.button-wrapper {
  background: darkorange;
  display: table-cell;
  vertical-align: middle;
}
Run Code Online (Sandbox Code Playgroud)
<div class='container'>
    
  <div>some line with text</div>
  <div>another line with text</div>    
    
  <div class='button-wrapper'>
    <input type="button" value="submit"  />
  </div>
    
</div>
Run Code Online (Sandbox Code Playgroud)

2016年更新:
flexbox http://jsfiddle.net/9knLeab6/1/

  • 谢谢你的帮助,这让我发疯了.您的解决方案完美无缺 :) (3认同)