WordPress页面显示不居中的解决办法

wordpress博客优化2015-05-04

作者: Duter2016 | 2019-11-04 | 阅读
「编辑」 「本文源码」

在wordpress制作网站的过程中,偶尔会出现整体页面在屏幕上居左显示(不是文字居左)的问题,或者是首页显示正常居中显示,但是内页(如文章归档页面)却居左显示。遇到这种现象可以参考以下方法决绝:

一、使用自动外边距实现居中

在使用的主题中找到style.css或者default.css文件,在里面找到body样式,将body的样式添加如下样式:

body { margin:0 auto;}

二、负外边距解决方案

有时,有的主体在使用上面的方法并不能解决问题,仍会有页面不能正常居中显示。在上面无法解决的时候,可以考虑采用这个第二个方法,当然还是优先使用第一个方法。

负外边距解决方案远不是仅仅为元素添加负外边距这么简单。这种方法需要同时使用绝对定位和负外边距两种技巧。

如果要实现整体页面居中,在使用的主题中找到style.css或者default.css文件,在里面找到body样式,将body的样式添加如下样式:

body { position:absolute; left:50%; width:960px; margin-left:-480px; }

或者

body {margin:0px auto 0px -480px; position:absolute; left:50%; width:960px; }

上面的两个效果在大部分主体中效果是一样的,只有上下边距的差别。下面对这个代码进行一下解释:

body {
    position:absolute;
    left:50%;
    width:960px; /*你的实际页面的宽度*/  
    margin-left: -480px; /*480为整体width(这里是960)的一半*/
}

这是使用绝对定位和负margin值实现的。

left:50% 会让整个body容器从浏览器水平方向的中点开始往右显示,此时浏览器左边的一半是空的。

然后设置margin-left为body容器的一半,设置为负值是让容器能再向左移动,也就是将整个容器从浏览器中点往左边挪动它(body容器)本身的一半。 这样body容器刚好就能够左右居中显示了。

同理,上下居中显示的原理一样:先top:50%让容器从垂直方向的中点向下显示,上面空出一半。然后再向上移动body容器的一半,使之垂直居中:

body {
    position:absolute;
    left:50%;
    top:50%;
    width:960px; /*你的实际页面的宽度*/
    margin-top:-270px; 
    margin-left: -480px; /*480为整体width(这里是960)的一半*/
}

这样子的实现基本兼容所有浏览器(测试通过了chrome firefox ie7-11)!


版权声明:本文由 Duter2016 在 2019年11月04日发表。本文采用CC BY-NC-SA 4.0许可协议,非商业转载请注明出处,不得用于商业目的。
文章题目及链接:《WordPress页面显示不居中的解决办法》




  相关文章:

「游客及非Github用户留言」:

「Github登录用户留言」:

TOP