我有一个非常简单的问题,但我似乎无法解决它。我在div中有一个表,这是主要元素。现在我在表格中有一个td标签,其宽度和高度设置为iphone屏幕尺寸。现在我基本上希望将该表格与其div标签中的td单元格对齐,以便“'屏幕'将在任何浏览器窗口中居中。我该怎么做?
用表替换div解决了我的问题,但我想改用div。
谢谢
答案 0 :(得分:8)
尝试这个,我做这个代码 - Demo here,非常简单和简单的代码(我已经使用了一个黑客代码和额外的span标签只用于IE旧版本) http://jsfiddle.net/ERuX4/1/
<div class="demo wraptocenter">
<span></span>
<img src="http://www.spitzer.caltech.edu/images/twitter.png?1295473781" alt="" />
</div>
<强> CSS 强>
.wraptocenter * {
vertical-align: middle;
}
.wraptocenter span {
display: inline-block;
height: 100%;
width: 1px;
}
.wraptocenter {
display: table-cell;
text-align: center;
vertical-align: middle;
}
/*End wraptocenter - image Vcenter patch styles*/
.demo {
width:100px;
height:100px;
border:1px solid red;
position:absolute;
top:50%;
left:50%;
margin-top:-100px;
margin-left:-100px;}
答案 1 :(得分:0)
<style type="text/css">
.outer { width:800px; height:640px; }
.inner {
position:relative; top:50%; left:50%;
width: 320px;
margin-left: -160px; /* half the width */
height: 240px;
margin-top: -120px; /* half the height */
</style>
<div class="outer">
<div class="inner">I'm centered!</div>
</div>
答案 2 :(得分:0)
试试这个:
div#centerlayout
{
position:absolute;
left:50%;
top:50%;
height:XXXpx;
width:XXXpx;
margin-top:-XXXpx;
margin-left:-XXXpx;
}
答案 3 :(得分:0)
<强> HTML 强>
<div class="img_thumb">
<table>
<tr><td>adfasfdasf</td></tr>
<tr><td>adfasfdasf</td></tr>
<tr><td>adfasfdasf</td></tr>
<tr><td>adfasfdasf</td></tr>
<tr><td>adfasfdasf</td></tr>
</table>
</div>
<强> CSS 强>
.img_thumb {
background: none repeat scroll 0 0 red;
display: table-cell;
height: 200px;
vertical-align: middle;
width: 200px;
}
table {
border: 1px solid;
width: 100px;
margin:auto;
}
或观看演示: - http://jsfiddle.net/QHEnL/16/
答案 4 :(得分:0)
我没有在IE中测试过(适用于FF和Safari),但是如果你使用的是jQuery,你可以使用它来将div与页面中的page
类对齐:
var pageMargin = ($(document).width() - $("div.page").width()) / 2;
$("div.page").css("margin-left", pageMargin).css("margin-right", pageMargin);