网页布局 CSS简单实现垂直居中

皮吧外交

皮吧外交

2016-02-19 23:24

下面图老师小编跟大家分享一个简单易学的网页布局 CSS简单实现垂直居中教程,get新技能是需要行动的,喜欢的朋友赶紧收藏起来学习下吧!

英文原文:
http://www.search-this.com/2008/05/15/easy-vertical-centering-with-css/

中文译文:
http://www.12sui.cn/blog/71.html

本人英语还没过四级,所以不能说是翻译把,只能说是按照自己的理解去叙述了一遍作者的意思,请各位多多指教。

译文内容

当你发觉你曾经以为的事实其实并不是那样,你会感觉很开心。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

旧的方法

经常做的第一件事通常是如何在 CSS 中控制元素水平或者垂直方向上居中,相信这也是很多设计师喜欢做的事情。首先,我们采用绝对定位的方法让元素离开顶部和左部 50% 的距离,然后我们需要设置一个负的 margin 来将元素拉回到中间的位置。

现在让我们来看一下这种方法的代码以及它所带来的问题:

CSS 代码:

html,body{
    height:100%;
    margin:0;
    padding:0;
}
body{
    background:#eae7d7 url(images/vert-centre.jpg) repeat-x center center;
    text-align:center;
    min-width:626px;
    min-height:400px;
}
#vert-hoz{
    position:absolute;
    top:50%;
    left:50%;
    margin-top:-198px;/* half elements height*/
    margin-left:-313px;/* half elements width*/
    width:624px;
    height:394px;
    border:1px solid silver;
    background:#666;
    overflow:auto;/* allow content to scroll inside element */
    text-align:left;
}
h1 {color:#fff;margin:0;padding:0}

HTML 代码:

div id="vert-hoz"
    h1Content goes here/h1
/div

你可以在 这里 看到这段代码的展示。

我为它设置了一个背景图片,仅仅是为了让它看起来更舒服一些,而我们真正需要注意的部分是中间那部分灰色的区域。

如你看到的那样,现在的结果正如我们想象的那样,那部分元素在水平和垂直的方向上完美的处在了中间的位置。这是按照我们最初提起的那种方式实现的,首先让元素在水平和垂直方向上离开 50% 的距离,然后设置负的 margin 让它回到中间的位置。

尽管表面上看来,现在的方法已经有效的达到了我们预期的目标,但是,同时也产生了严重的负面影响。当一个人将浏览器窗口变小,或者使用一个低分辨率的电脑时,那么居中的那部分元素的上部和左部将消失,即使通过滚轮的滑动,也无法看到。

当我们将窗口变小,就会看到如下图那样的情况:

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

文字的顶部和左部已经消失,而且,随着我们浏览器窗口的不断缩小,这段文字将最终离开我们的视线。为了弥补这些负的数值,我们为 body 设置了 min-width 和 min-height,但是你可以看到,这根本没有起到任何效果,那段文字依然停留在我们视线以外的地方。

展开更多 50%)
分享

猜你喜欢

网页布局 CSS简单实现垂直居中

Web开发
网页布局 CSS简单实现垂直居中

CSS教程:在网页布局中简单实现垂直居中的办法

Html CSS布局 Div+CSS XHTML
CSS教程:在网页布局中简单实现垂直居中的办法

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

CSS垂直居中网页布局实现的5种方法

Web开发
CSS垂直居中网页布局实现的5种方法

CSS网页布局:div垂直居中的各种方法

Web开发
CSS网页布局:div垂直居中的各种方法

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

网页制作实例:用CSS实现图片垂直居中方法

Web开发
网页制作实例:用CSS实现图片垂直居中方法

CSS实现DIV内容垂直及水平居中

Web开发
CSS实现DIV内容垂直及水平居中

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

解决Word2010中插入图片时变成空白框问题

解决Word2010中插入图片时变成空白框问题

ul结合CSS制作网页相册滑动浏览效果

ul结合CSS制作网页相册滑动浏览效果
下拉加载更多内容 ↓