CSS实现垂直水平居中有几种方法,哪种好
Admin 2022-07-13 群英技术资讯 511 次浏览
CSS 居中对齐
flex 居中
优点:可对未知高度进行居中处理
<style> .wrap{height: 100%;display: flex; justify-content: center; align-items: center;align-content:center;} .other{background-color: #ccc; width: 400px;height: 400px;} /* 额外的样式 可去除 */ </style> <div class="wrap"> <div class="other"> <h2>这是第二层的内容 不会居中</h2> </div> </div>
position + translate 居中
优点: 可对未知高度进行居中处理、嵌套层最少
<style> /* position 可选 absolute|fixed*/ .center{position: absolute;left: 50%;top: 50%; transform: translate(-50%,-50%);} .other{background-color: #ccc; } /* 额外的样式 可去除 */ </style> <div class="center other"> <h2>这一层的内容 不会居中</h2> </div>
table-cell 居中
缺点:1. 居中层需要设置宽度(.center)。 2.外层多嵌套一层(.cell) 3. 居中层必须设置宽度(允许 %)
<style> .wrap{display: table;width: 100%;height: 100%;} .cell{display: table-cell;vertical-align:middle;} .center{width: 400px;margin-left:auto;margin-right:auto;} .other{background-color: #ccc; height: 400px;} /* 额外的样式 可去除 */ </style> <div class="wrap"> <div class="cell"> <div class="center other"> <h2>这一层的内容 不会居中</h2> </div> </div> </div>
传统居中 (2种)
缺点:1. margin 值必须为auto。 2. 居中层必须设置高宽(允许 %) 3. 必须使用 position
<style> /* 1. left、top、right、bottom 可以任意,但必须相等 2. position 可选 absolute|fixed */ .center{position: absolute;left: 10px;top: 10px;right: 10px;bottom: 10px;margin: auto;width: 400px;height: 400px;} .other{background-color: #ccc; } /* 额外的样式 可去除 */ </style> <div class="center other"> <h2>这一层的内容 不会居中</h2> </div>
缺点: 居中层必须设置固定高宽,并且magin需要通过高宽计算得出。
<style> .wrap{position: relative;height: 100%;} .center{position: absolute;left: 50%;top: 50%; width: 400px;height: 300px; margin-left: -200px;margin-top: -150px;} .other{background-color: #ccc; } /* 额外的样式 可去除 */ </style> <div class="wrap"> <div class="center other"> <h2>这一层的内容 不会居中</h2> </div> </div>
总结
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
使用table标签进行布局,主要还是使用了vertical-align属性和text-align属性。但是相对于上一种方式,使用table标签会产生大量的冗余代码。不推荐使用
这篇文章主要介绍了纯CSS实现“文本溢出截断省略”的几种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
这篇文章主要给大家介绍用@media怎样实现响应式适配屏幕的内容,一些朋友可能对@media不是很了解。对此下面我们先简单的了解@media的定义和使用,再看@media怎样实现响应式适配屏幕。
这篇文章主要介绍了CSS宽高等比布局的方法的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
ss动画会被JS阻塞吗?对于这个问题,一些朋友不是很理解,其实css的动画部分是会被js阻塞的,不过transform的动画则不会受影响。下面我们通过示例来分析一下。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008