关于多行文字水平垂直居中的一点心得分享
关于多行文字水平垂直居中的一点心得分享
发布时间:2017-01-07 来源:查字典编辑
摘要:前些天在W3CPlus看到了一篇文章,提到用CSS制作水平垂直居中,在测试其中的第六点时发现了一些小问题:添加了一个无意义的新标签当设定内容...

前些天在W3CPlus看到了一篇文章,提到用CSS制作水平垂直居中,在测试其中的第六点时发现了一些小问题:

添加了一个无意义的新标签

<div id="extra">

当设定内容宽度的时候,文本换行了

对于第一点,解决的办法是使用 :before 伪元素 :

<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>水平垂直居中</title>

<style>

.wrapper {

width: 200px;

height: 200px;

background: skyblue;

}

.wrapper:before {

content: '.';

display: inline-block;

vertical-align: middle;

height: 100%;

}

.content {

display: inline-block;

text-align: center;

}

</style>

</head>

<body>

<div>

<div>多行文字居中 多行文字居中 多行文字居中 </div>

</div>

</body>

</html>

附Demo

但是!大家也都注意到了:文本换行了

1

这便是inline-block产生的空隙在捣乱了

为了解决这个问题,可以试试这个hack:

.wrapper {

font-size:0

}

.content {

font-size:16px

}

保存再看看:

2

搞定!

附完整源码

参考资料(推荐阅读):

CSS制作水平垂直居中对齐

如何解决inline-block元素的空白间距

inline-block 前世今生

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新 Div+Css教程学习
热门 Div+Css教程学习
网页设计子分类