Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html CSS水平对齐表格的方法_Html_Css_Alignment_Css Tables - Fatal编程技术网

Html CSS水平对齐表格的方法

Html CSS水平对齐表格的方法,html,css,alignment,css-tables,Html,Css,Alignment,Css Tables,我想在浏览器窗口的中心显示一个固定宽度的表格。现在我用 <table width="200" align="center"> 但Visual Studio 2008在这一行中给出了警告: 属性“align”被认为已过时。建议使用较新的构造 为了获得相同的布局,我应该对表应用什么CSS样式 style="text-align:center;" (我想) 或者您可以忽略它,它仍然有效尝试以下方法: <table width="200" style="margin-lef

我想在浏览器窗口的中心显示一个固定宽度的表格。现在我用

<table width="200" align="center"> 

但Visual Studio 2008在这一行中给出了警告:

属性“align”被认为已过时。建议使用较新的构造

为了获得相同的布局,我应该对表应用什么CSS样式

style="text-align:center;" 
(我想)

或者您可以忽略它,它仍然有效

尝试以下方法:

<table width="200" style="margin-left:auto;margin-right:auto">

史蒂文是对的,在:

使用CSS将表格居中的“正确”方法。如果左右边距相等,则一致的浏览器应该将表格居中。实现这一点的最简单方法是将左右边距设置为“自动”。因此,可以在样式表中编写:

但是在这个答案的开头提到的那篇文章提供了所有其他方法来居中放置一张桌子

优雅的css跨浏览器解决方案: 这在MSIE 6(怪癖和标准)、Mozilla、Opera甚至Netscape 4.x中都有效,无需设置任何明确的宽度:

div.centered
{
文本对齐:居中;
}
分区居中表
{
保证金:0自动;
文本对齐:左对齐;
}
…
这应该可以:

<div style="text-align:center;">
  <table style="margin: 0 auto;">
    <!-- table markup here. -->
  </table>
</div>

简单。如果页面以“标准”模式呈现,IE6及以上版本将很高兴使用“页边距:0自动”将表格居中。要实现这一点,您需要一个有效的doctype声明,例如

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">


诚然,IE5.5及以下版本仍然会拒绝将表格居中,但也许您可以接受这一点,尤其是当页面仍在使用左对齐的表格时。我认为现在IE5.5及以下版本的用户已经相当习惯了一些外观怪异的网站,但你仍然需要确保这些视觉故障不会导致你的网站无法使用

快乐编码

编辑:对不起,我也许应该指出,要使IE6和更高版本进入“标准”渲染模式,您不需要“严格”的doctype。从我上面发布的doctype示例中,我意识到可能是这样的。例如,此doctype声明当然同样有效:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

我刚刚学会了这一点,最终对我有用的是首先制作一个有三行的表格。将左右行的边距设置为50%。然后将一行固定宽度的表格放在中心“表格行”的“表格数据”内


.美国广播公司{
文本对齐:居中;
}
项目1
项目2

尽管这在当今世界可能是异端邪说,但在过去,您会执行以下非css代码。这适用于包括今天的浏览器在内的所有浏览器,但正如我所说的,这在当今世界是异端邪说:

<center>
<table>
   ...
</table>
</center>
css命令,在IE8(至少)中,它将使页面上的所有内容(包括表格)居中。

添加到div样式:

width: fit-content;

基本上,它的工作原理是

<table align="center">
...

...

但是,您可以使用CSS以更好的方式来实现这一点,这将是一种更好的使用CSS的方法,因为它为web页面提供了动态行为,并且具有响应性

  <table style="text-align:center;">

此外,如果需要在页面上仅显示表格,则可以仅使用body标记对齐,如下所示

 <body style="text-align:center;">
<table>
  ...
</table>

...

如果你想要任何其他建议,请让我知道。我一定会帮你的。
此外,使用引导功能,这将更加简单和交互式。

您可以使用边距:0自动将表格居中;在IE6及以上版本中,如果您确保您的页面具有有效的doctype声明。@马可:我现在没有这些信息,但这可能是一个关于StackOverflow的问题的良好基础。您完全正确。表格无需指定宽度即可水平居中。我测试过了。而最小的DIV确实需要指定一个宽度来获得水平居中。那么,您最终选择了哪种解决方案?
text-align: center;
width: fit-content;
<table align="center">
...
  <table style="text-align:center;">
 <body style="text-align:center;">
<table>
  ...
</table>