html页面对齐问题

Posted

技术标签:

【中文标题】html页面对齐问题【英文标题】:html page alignment issue 【发布时间】:2009-12-21 16:28:03 【问题描述】:

我正在 Windows 平台上开发一个 html 页面。我发现当浏览器(显示)的分辨率(或大小,以像素为单位)大于页面大小时,页面将对齐到浏览器的左侧,我想将页面对齐到中心(中间)页面大小小于浏览器时的浏览器。

任何想法如何实现这一点以及如何找到左对齐的根本原因? html页面很大,不方便在这里粘贴html代码。

提前致谢, 乔治

【问题讨论】:

【参考方案1】:

首先,您需要将页面内容包装在一个块中(该块将居中):

<div id="body">
    <!-- your page content here -->
</div>

然后您需要将其设置为居中。由于 Firefox 和 IE 处理块居中的方式略有不同,您必须做两件事才能使块居中。

1。将 body 设置为所有内容居中(对于 IE):


body 
    text-align: center;

2。将内部块的左右边距设置为“自动”;和

3。由于居中文本会继承其子节点,因此您希望将其设置回左对齐(除非您确实希望所有文本都居中......等等!):


#body 
    margin: 0px auto;
    text-align: left;
    width: 800px; /* set this width to how wide you want your content to be */

【讨论】:

【参考方案2】:

任何想法如何实现这个和

http://dorward.me.uk/www/centre/

如何找到左对齐的根本原因?

...因为这是默认设置。

【讨论】:

我发现 IE 和 Firefox 有同样的问题,你的意思是 IE 和 Firefox 都保留默认对齐方式? 在您推荐的文档中,它提到了如何使其以特定元素为中心,例如

,我的问题是如何使其以整个页面为中心?

您将所有内容包装在一个元素(例如 div)中并将其居中。【参考方案3】:
<style>
body

    width:800px;
    margin:auto;

</style>

【讨论】:

我没有在您的代码 sn-p 中找到任何处理对齐的代码? 在 CSS 中,将元素的左右边距设置为“自动”会导致该元素在其包含块内居中。 谢谢!我的 html 页面包含很多母版页(遗留代码),我不想过多地触及它们。您能否向我推荐一种安全有效的方法来使页面居中对齐,而无需触摸这些母版页? :-) 某些版本的 Internet Explorer(7 和更低的 IIRC)不允许您在 body 元素上设置宽度。【参考方案4】:

您只需在正文中添加 text-align: center; 即可覆盖旧版浏览器并添加:

text-align: left;
margin: 0 auto;

到您的第一个容器 div ...这将在所有浏览器中水平居中,无论多旧。

【讨论】:

为什么我需要同时添加 text-align: center;和文本对齐:左;? 文本对齐:居中; on body 是将页面上的所有内容居中对齐...因此,您需要在容器 div 中覆盖它,以便保留图像/正文副本等的默认位置,因为它会很自然。 1.您的意思是将“text-align:center”添加到body元素并添加“text-align:left;”到其他div? 2. 我的 html 页面包含很多母版页(遗留代码),我不想过多地接触它们。您能否向我推荐一种安全有效的方法来使页面居中对齐,而无需触摸这些母版页? :-) 是的,这就是我的意思......没有其他方法......这就是对齐页面的方式。对不起。

以上是关于html页面对齐问题的主要内容,如果未能解决你的问题,请参考以下文章

在页面中心并排对齐 3 个图像? HTML

HTML/CSS 将 DIV 对齐到页面底部和屏幕 - 以先到者为准

html页面渲染chrome vs IE

html 修复未在文件Panels / BrandContent.html中左对齐的品牌页面上的标题

HTML垂直对齐失败?

如何对齐页面中心的列? [复制]