网站首页 > 基础教程 正文
本文简单介绍如何通过CSS实现常见元素的水平、垂直居中。
水平居中
- 行内元素
这种情况最简单,只需要将行内元素包括在一个display属性为block的父元素中,并且设置父元素text-align为居中即可
.border {
width: 400px;
line-height: 100px;
border: 1px solid red;
text-align: center;
}
行内元素
- 块状元素
对块状元素设置相应的外边距即可,外边距左、右设置为auto。
.parent {
width: 400px;
height: 100px;
border: 1px solid red;
}
.block-child {
width: 100px;
border: 2px solid black;
margin: 10px auto;
text-align: center;
}
块状元素
- 多个块状元素①
传统方法,在父元素设置text-align:center; 然后将需要居中的块状元素的display设置为inline-block
.border {
width: 400px;
line-height: 100px;
border: 1px solid red;
text-align: center;
}
.inline-block {
display: inline-block;
border: 1px solid black;
}
块状元素1
块状元素2
块状元素3
- 多个块状元素②
使用flex布局实现,将父元素display设置为flex,同时设置子元素对齐。
.parent-flex {
width: 400px;
border: 1px solid red;
display: flex;
justify-content: center;
}
块状元素1
块状元素2
块状元素3
垂直居中
- 单行行内元素
将行内元素的 line-height 属性与其父元素的 height 属性设置为相同值,比如都是40px。
- 多行的行内元素
通过设置父元素display属性为table-cell,及其他相关属性解决。
.parent-table-cell {
width: 400px;
height: 100px;
border: 1px solid red;
display: table-cell;
vertical-align: middle;
}
行内元素1
行内元素2
行内元素3
- 已知高度的块状元素
结合元素的position及margin属性,通过定位设置居中,父元素position设置为relative。
.item{
top: 50%; // 顶部位置位于父元素的50%处
margin-top: -50px; // margin-top 值为自身高度的一半
position: absolute; //position也可以是
}
注意:如果规定了 !DOCTYPE,则 Internet Explorer 8 (以及更高版本)支持display属性值 "inline-table"、"run-in"、"table"、"table-caption"、"table-cell"、"table-column"、"table-column-group"、"table-row"、"table-row-group"、以及 "inherit"。
喜欢就关注支持一下吧。
- 上一篇: 用CSS 实现元素垂直居中,有哪些好的方案?
- 下一篇: css——定位(css定位路径)
猜你喜欢
- 2025-03-28 做个简单的本地弹幕播放器(做个简单的本地弹幕播放器软件)
- 2025-03-28 如何使用CSS实现旋转地球动画效果
- 2025-03-28 css 实现各种多边形图案(css裁剪多边形)
- 2025-03-28 前端兼容性问题总结(前端兼容性问题总结怎么写)
- 2025-03-28 CSS 样式表小结(css样式表的使用方法有几种)
- 2025-03-28 用CSS实现居中的七种方法(css中如何居中)
- 2025-03-28 JS如何判断文字被ellipsis了?(js判断某字段是否存在)
- 2025-03-28 CSS3的3D属性详解,附示例代码。(css30)
- 2025-03-28 CSS 水平居中方式二(css水平居中行内元素)
- 2025-03-28 css——定位(css定位路径)
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)