如何在CSS中获得align ="center"效果并符合XHTML并使其适用于大多数浏览器

Fun*_*ung 0 html css xhtml

我试图让一些HTML页面更加合规,并开始使用简单的东西,比如删除表格中的align ="center"等.

但是,我似乎无法使用CSS获得我想要的效果.东西我试过包括

text-align:middle
vertical-align:middle
Run Code Online (Sandbox Code Playgroud)

并且是设计师朋友最推荐的

margin-left:auto; margin-right:auto; width: 100px
Run Code Online (Sandbox Code Playgroud)

但在某些布局或某些浏览器(尤其是IE6)下似乎没有任何工作.是否有一种可靠的方法来使用纯CSS并使其适用于大多数浏览器?

编辑:我的意思text-align: center;.匆匆输入.该页面已有DOCTYPE,但我不确定它是否合适.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Run Code Online (Sandbox Code Playgroud)

cle*_*tus 7

它的:

text-align: center;
Run Code Online (Sandbox Code Playgroud)

用于水平居中但是:

vertical-align: middle;
Run Code Online (Sandbox Code Playgroud)

对于垂直居中,但垂直居中这种方式几乎只适用于表格单元格.要在不使用表格的情况下获得跨浏览器垂直居中,请查看CSS中的垂直居中(是的,这是非常重要的).

注意: text-align: middle并且vertical-align: center值不正确.

要将块元素水平居中,通常的技巧是:

<div id="outer">
  <div id="inner">Some test...</div>
</div>
Run Code Online (Sandbox Code Playgroud)

有:

#outer { width: 600px; }
#inner { width: 300px; margin: 0 auto; border: 1px solid black; }
Run Code Online (Sandbox Code Playgroud)

请记住,这在委婉的"怪癖"模式中不一定适用于IE的某些版本.通过在文档顶部使用DOCTYPE强制IE进入(也是委婉的)"标准兼容"模式是一种很好的做法.