居中 - CSS 挑战
您可以在 github 仓库中找到这篇文章中的所有代码。
您可以在此处查看垂直中心 - codesandbox 和水平中心的视觉效果。
通过 css 居中
垂直居中
<!doctype html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="x-ua-compatible" content="ie=edge" /> <title>centering</title> <link rel="stylesheet" href="styles.css" /> </head> <body> <p class="center-by-absolute-margin">centering</p> <p class="center-by-pseudo-class">centering</p> <p class="center-by-line-height">centering</p> <p class="center-by-table">centering</p> <div class="center-by-flex"> <p>centering</p><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/cb6835dc7db1" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">前端免费学习笔记(深入)</a>”;</p> </div> <div class="center-by-grid"> <p>centering</p><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/cb6835dc7db1" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">前端免费学习笔记(深入)</a>”;</p> </div> <div class="center-by-absolute-parent"> <p class="center-by-absolute-child">centering</p> </div> <p class="center-by-calc">centering</p> </body> </html>
.center-by-absolute-margin { position: absolute; top: 0; bottom: 0; margin: auto 0; } .center-by-pseudo-class::before { content: ""; display: inline-block; height: 100%; vertical-align: middle; } .center-by-line-height { height: 200px; line-height: 200; } .center-by-table { display: table-cell; vertical-align: middle; } .center-by-flex { display: flex; align-items: center; } .center-by-grid { display: grid; align-items: center; } .center-by-absolute-parent { position: relative; } .center-by-absolute-child { position: absolute; top: 50%; transform: translatey(-50%); } .center-by-calc { height: 70px; position: relative; top: calc(50% - 35px); }
水平居中
<!doctype html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="x-ua-compatible" content="ie=edge" /> <title>centering</title> <link rel="stylesheet" href="styles.css" /> </head> <body> <p class="center-by-fixed-width">centering</p> <p class="center-by-text-align">centering</p> <div class="center-by-unfixed-width"> <span>centering</span> </div> <p class="center-by-table">centering</p> <div class="center-by-flex"> <p>centering</p><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/cb6835dc7db1" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">前端免费学习笔记(深入)</a>”;</p> </div> <div class="center-by-grid"> <p>centering</p><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/cb6835dc7db1" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">前端免费学习笔记(深入)</a>”;</p> </div> <div class="center-by-absolute-parent"> <p class="center-by-absolute-child">centering</p> </div> <p class="center-by-calc">centering</p> </body> </html>
.center-by-fixed-width { width: 70px; margin: 0 auto; } .center-by-text-align { text-align: center; } .center-by-unfixed-width { text-align: center; } .center-by-table { display: table; margin: 0 auto; } .center-by-flex { display: flex; justify-content: center; } .center-by-grid { display: grid; justify-content: center; } .center-by-absolute-parent { position: relative; } .center-by-absolute-child { position: absolute; left: 50%; transform: translateX(-50%); } .center-by-calc { width: 70px; margin-left: calc(50% - 35px); }
以上就是居中 - CSS 挑战的详细内容,更多请关注其它相关文章!