我在页面上有两个表,我想要并排显示,然后将它们放在页面中(实际上在另一个div中,但这是我能想到的最简单的):
Two tables, side by side, centered together within the page.
a b 1 2 4 9 16 25
a b c 1 2 2 3 5 15 8 13 104 all done.
我知道这与表格浮动这一事实有关,但我不知道自己错过了什么.有许多网页描述了我在这里展示的技术,但无论如何它都不起作用; 桌子固执地靠在左边缘.
不幸的是,所有这些解决方案都依赖于指定固定宽度.由于表是动态生成的(从数据库中提取统计结果),因此无法预先知道宽度.
通过将两个表包装在另一个表中可以实现所需的结果:
//code for table on the left | //code for table on the right |
结果是一对完美居中的表格,它们可以流畅地响应任意宽度和页面(重新)大小(并且align ="center"表属性可以被提升到带有边距autos的外部div中).
我的结论是,有些布局只能通过表来实现.
如果是我 - 我会做这样的事情:
a
b
1
2
4
9
16
25
a
b
1
2
4
9
16
25
用表如:
a
b
1
2
4
9
16
25
a
b
1
2
4
9
16
25
我意识到这是一个古老的问题,但无论如何都要进行.
以下内容适用于兼容浏览器和标准模式下的IE8(即设置了doctype).
#inner {text-align:center;} .t {display:inline-block;}
不幸的是,实际上没有办法调整它在IE6中工作.对于IE7,向.t divs添加zoom:1(通过条件注释)可能会有所帮助,但我目前还没有IE7可用于测试.
问题是你需要给#inner
一组width
(除了auto
或之外inherit
).margin: 0 auto;
只有当内部元素比其容器元素更窄时,该技巧才有效.在没有给出的情况下width
,#inner
会自动扩展到整个宽度#outer
,这会导致其内容向左冲洗.