表格布局实现居中布局
1. 前言
其实 CSS 布局流行起来之前一直使用的是表格布局。
在居中布局这种场景下,表格布局也很适用。
2. 实例代码
来看看表格具体如何实现居中:
实例演示
预览
复制
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
/* 清除默认样式 */
* { padding: 0; margin: 0; }
body {
/* 令body全屏显示 */
width: 100vw;
height: 100vh;
/* 显示为表格的格子 */
display: table-cell;
/* 水平居中 */
text-align: center;
/* 垂直居中 */
vertical-align: middle;
/* 灰色背景 */
background: gray;
}
.center {
/* 显示为行内块元素 */
display: inline-block;
/* 不用给宽高,但是可以给个内边距防止内容与盒子过于贴合 */
padding: 10px;
/* 白色背景 */
background: white;
}
</style>
</head>
<body>
<div class="center">用内容撑开盒子</div>
</body>
</html>
运行案例
点击 "运行案例" 可查看在线运行效果
运行结果:
此布局的关键点在于:
- 父元素上 3 个样式设置:
display: table-cell; text-align: center; vertical-align: center;
; - 子元素上设置
display: inline-block;
。
3. 小结
我知道看到这里很多同学都郁闷了:一个居中布局就这么多种方式,我得学到猴年马月才能记得住啊…
其实大可不必,方案过多虽然会导致有些懵,但如果我就为你指明一个方案呢?
重点练会一个方案,其他方案作为了解即可,这样是不是就感觉不那么困难了呢?
那么最推荐的就是最流行的同时也是代码量最少的:弹性布局方案。只要不是一些需要兼容很低版本浏览器的网站,你只需重点练会这一种就可以了。但如果你找了个非要兼容低版本浏览器的工作,那么推荐你绝对定位法。
本章我们带领大家用多种方式实现了居中布局,当然不仅仅只有这几种方式能够实现居中,但是这几种是目前来说最实用的。
其他没提到方式有的比较偏门,实际开发中很少用到。