CSS(竖直居中)

引子


一直以为对这个问题已经有很好的解决方案了,代码如下。

/*
* .parent: 父元素
* .child: 子元素
*/
.parent {
    height: 50px;
    width: 50px;
    display: inline-block;
    vertical-align: middle;
    font-size: 0;
}

.parent:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 100%;
}

.child {
    display: inline-block;
    vertical-align: middle;
    font-size: 1rem;
    /*width: 100%;*/
}

谁知道今天踩了UC浏览器的坑,才有了另一个方案。先来说说起因。

UC上设置子元素的宽度为100%时,这个居中便会失效,即使父元素设置了font-size: 0这个样式。于是去张鑫旭的博客查阅了一下,有了下面这个针对UC的解决方案。

/*
* .parent: 父元素
* .child: 子元素
*/
.parent {
    height: 50px;
    width: 50px;
    line-height: 50px;
    font-size: 0;
}

.child {
    display: inline-block;
    vertical-align: middle;
    width: 100%;
    line-height: normal;
    font-size: 1rem;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,826评论 1 92
  • (3)父元素高度确定的多文本、图片、块级元素居中方法一:设置块级元素的display:table-cell(ie6...
    闷骚师兄阅读 304评论 0 0
  • 学习CSS的最佳网站没有之一 http://www.w3school.com.cn/tags/index.asp ...
    Amyyy_阅读 1,101评论 0 1
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,852评论 25 709
  • 呜咽的哀怨声 顺着风,飘进了汩罗江 千万滴眼泪,汇成一股股洪流 在咆哮,在激荡 在汨罗江上盘旋 离骚的悲情,感染了...
    平山冷燕_725a阅读 364评论 2 14