前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Day14:CSS垂直居中

Day14:CSS垂直居中

作者头像
达达前端
发布2019-07-15 10:36:34
6130
发布2019-07-15 10:36:34
举报
文章被收录于专栏:达达前端达达前端

verticle-align:middle

vertical-align:middle实现css垂直居中是常用的方法,但是需要注意,vertical生效的前提是diaplay:inline-block

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>css水平居中</title>
<style>
#out {
 background: blue;
 width: 600px;
 height: 300px;
}
#in {
 background: yellow;
 width: 50%;
 height: 50%;
 display: inline-block;
 vertical-align: middle;
}
</style>
</head>
<body>
<div id="out">
 <div id="in"></div>
 </div>
</body>
</html>

display: flex实现

display:flex实现css垂直居中的方法是给父元素display: flex;而子元素align-self:center;

代码语言:javascript
复制
<style>
#out{
background: blue;
width: 600px;
height: 300px;
display: flex;
}
#in {
background: yellow;
width: 50%;
height: 50%;
align-self: center;
}
父元素display:flex
子元素align-self:center

伪元素:before实现CSS垂直居中

代码语言:javascript
复制
<style>
#out{
background:blue;
width: 600px;
height: 300px;
display: block;
}
#out:before{
content: '';
display:inline-block;
vertical-align:middle;
height:100%;
}
#in{
background: yellow;
width: 50%;
height: 50%;
display: inline-block;
vertical-align: middle;
}
</style>

display:table-cell实现css垂直居中

给父元素display:table,子元素display: table-cell的方式实现css垂直居中。

代码语言:javascript
复制
<style>
#out {
background: blue;
width: 600px;
height: 300px;
dispaly: table;
}
#in{
background: yellow;
width: 50%;
height: 50%;
display:table-cell;
vertical-align:middle;
}
</style>

隐藏节点实现CSS垂直居中

代码语言:javascript
复制
<style>
#out{
background: blue;
width: 600px;
height: 300px;
}
#hide{
width: 50%;
 height: 25%;
}
隐藏节点的height为剩余高度的一半
#in {
background: yellow;
width: 50%;
height: 50%;
}
</style>
<body id="out">
<div id="hide"></div>
<div id="in"></div>
</body>

通过transform实现CSS垂直居中

代码语言:javascript
复制
<style>
#out {
background: blue;
width: 600px;
height: 300px;
}
#in{
background: yellow;
width: 50%;
height: 50%;
position: relative;
top: 50%;
transform: translateY(--50%);
}
</style>

line-height实现CSS垂直居中

代码语言:javascript
复制
<style>
#out {
background: blue;
width: 600px;
height: 300px;
}
#in {
 width: 50%;
 height: 50%;
 line-height: 300px;
}
</style>

<body>
<div id="out">
 <p id="in">css</p>
</div>
</body>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.07.14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • verticle-align:middle
  • display: flex实现
  • 伪元素:before实现CSS垂直居中
  • display:table-cell实现css垂直居中
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档