C#:如何设置table在页面中绝对居中?

我用TABLE进行页面布局,当显示器大小改变时,页面在浏览器中显示的位置就发生了变化,如何设置最外层的TABLE在页面中绝对居中显示呢?谢谢!!我的代码如下:<TABLE... 我用TABLE进行页面布局,当显示器大小改变时,页面在浏览器中显示的位置就发生了变化,如何设置最外层的TABLE在页面中绝对居中显示呢?
谢谢!!
我的代码如下:
<TABLE id="Table1" style="Z-INDEX:101; MARGIN:0px auto; POSITION:absolute; TOP:8px" cellSpacing="0"
cellPadding="0" width="776" border="0" align="center">
任然不行,我用的是:vs2003.为什么呢?哪里写错了吗??
展开
 我来答
Ben
推荐于2018-05-11 · 知道合伙人软件行家
Ben
知道合伙人软件行家
采纳数:860 获赞数:2875
认真回答者.

向TA提问 私信TA
展开全部

Ⅰ.绝对定位居中(Absolute Centering)技术


实现垂直居中仅需要声明元素高度和下面的CSS:

[css] view plaincopy

.Absolute-Center {  

  margin: auto;  

  position: absolute;  

  top: 0; left: 0; bottom: 0; right: 0;  

}  


这只是非常常见的一种小技术,

优点:

1.支持跨浏览器,包括IE8-IE10.

2.无需其他特殊标记,CSS代码量少

3.支持百分比%属性值和min-/max-属性

4.只用这一个类可实现任何内容块居中

5.不论是否设置padding都可居中(在不使用box-sizing属性的前提下)

6.内容块可以被重绘。

7.完美支持图片居中。

缺点:

1.必须声明高度(查看可变高度Variable Height)。

2.建议设置overflow:auto来防止内容越界溢出。(查看溢出Overflow)。

3.在Windows Phone设备上不起作用。

浏览器兼容性:

Chrome,Firefox, Safari, Mobile Safari, IE8-10.

绝对定位方法在最新版的Chrome,Firefox, Safari, Mobile Safari, IE8-10.上均测试通过。

对比表格:

绝对居中法并陆销不是唯一的实现方法,实现垂直居中还有些其他誉枣的方法,并各有各的优势。采用哪种技术取决于你的浏览器是否支持和你使用的语言标记。这个对照表有助于你根据自己的需求做出正确的选择。

 


   


 

解释:

通过以上描述,绝对居中(AbsoluteCentering)的工作机理可以阐述如下:

1、在普通内容流(normal content flow)中,margin:auto的效果等同于margin-top:0;margin-bottom:0。

W3C中写道If 'margin-top', or'margin-bottom' are 'auto', their used value is 0.

2、position:absolute使绝对定位块跳出了内容流,内容流中的其余部分渲染时绝对定位部分不进行渲染。

Developer.mozilla.org:...an element that is positioned absolutely is taken out of the flow and thustakes up no space

3、为块区域设置top: 0; left: 0; bottom: 0; right: 0;将给浏览器重新分配一个边界框,此时该块block将填充其父元庆悉拆素的所有可用空间,父元素一般为body或者声明为position:relative;的容器。

Developer.mozilla.org:For absolutely positioned elements, the top, right, bottom, and left propertiesspecify offsets from the edge of the element's containing block (what theelement is positioned relative to).

4、  给内容块设置一个高度height或宽度width,能够防止内容块占据所有的可用空间,促使浏览器根据新的边界框重新计算margin:auto

Developer.mozilla.org: The margin of the[absolutely positioned] element is then positioned inside these offsets.

5、由于内容块被绝对定位,脱离了正常的内容流,浏览器会给margin-top,margin-bottom相同的值,使元素块在先前定义的边界内居中。

W3.org: If none of the three [top, bottom,height] are 'auto': If both 'margin-top' and 'margin-bottom' are 'auto', solvethe equation under the extra constraint that the two margins get equal values.AKA: center the block vertically

这么看来, margin:auto似乎生来就是为绝对居中(Absolute Centering)设计的,所以绝对居中(Absolute Centering)应该都兼容符合标准的现代浏览器。

简而言之(TL;DR):绝对定位元素不在普通内容流中渲染,因此margin:auto可以使内容在通过top: 0; left: 0; bottom: 0;right: 0;设置的边界内垂直居中。

piaoyinggao
2009-01-20 · TA获得超过1313个赞
知道小有建树答主
回答量:372
采纳率:0%
帮助的人:230万
展开全部
如果按改辩照W3C标准来写,可以用style="margin:0px auto"但是注意笑银这样必须要写碰歼宴table的宽度
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
panning_hu123
推荐于2017-12-15
知道答主
回答量:6
采纳率:0%
帮助的人:0
展开全部
在最外层的table写入align="center"培前肢这个属性是个过期属性,但还能用,
如配世: <table align="center"></table>
或是style="margin:auto;"悔源
如: <table style="margin:auto;"></table>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1998syz1234567
2009-01-20 · TA获得超过347个赞
知道答主
回答量:445
采纳率:0%
帮助的人:0
展开全部
在最外层的table写入align="备晌center"祥困这个属性是个过期属性,但仿宴锋还能用,
如: <table align="center"></table>
或是style="margin:auto;"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友94f02eb
2009-01-20 · TA获得超过8612个赞
知道大有可为答主
回答量:7955
采纳率:74%
帮助的人:4475万
展开全部
<table style="margin: 0 auto">
....
</table>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式