您现在的位置是:网站首页> 编程资料编程资料
CSS文本和div垂直居中方法总结 CSS水平垂直居中的几种方法总结css让容器水平垂直居中的7种方式利用CSS3的flexbox实现水平垂直居中与三列等高布局CSS设置文字图片垂直居中的方法总结深入理解CSS行高line-height与文本垂直居中的原理Flexbox制作CSS布局实现水平垂直居中的简单实例CSS设置DIV垂直居中的N种方法 兼容IE浏览器 CSS 实现垂直居中的几种方法(必看)CSS在固定宽高的div内实现垂直居中的实例详解CSS实现垂直居中的几种方法小结
2023-10-21
246人已围观
简介 这篇文章主要介绍了CSS文本和div垂直居中方法总结,包括多行文本垂直居中,单行文本垂直居中,子div垂直居中,感兴趣的小伙伴们可以参考一下
在样式布局中,我们经常碰到需要将元素居中。通过css实现元素的水平居中较为简单:对文本,只需要对其父级元素设置text-align: center;,而对div等块级元素,只需要设置其left和right的margin值为auto。要实现元素的垂直居中,有人会想到css中的vertical-align属性,但是它只对拥有valign特性的元素才生效,例如表格元素中的
单行文本垂直居中
对于单行文本,我们只需要将文本行高(line-height)和所在区域高度(height)设为一致即可:
- <div id="div1">
- 这是单行文本垂直居中
- div>
- /*css代码*/
- #div1{
- width: 300px;
- height: 100px;
- margin: 50px auto;
- border: 1px solid red;
- line-height: 100px; /*设置line-height与父级元素的height相等*/
- text-align: center; /*设置文本水平居中*/
- overflow: hidden; /*防止内容超出容器或者产生自动换行*/
- }

多行文本垂直居中
多行文本垂直居中分为两种情况,一个是父级元素高度不固定,随着内容变化;另一个是父级元素高度固定。
父级元素高度不固定
父级高度不固定的时,高度只能通过内部文本来撑开。这样,我们可以通过设置内填充(padding)的值来使文本看起来垂直居中,只需设置padding-top和padding-bottom的值相等:
- <div id="div1">
- 这是多行文本垂直居中,
- 这是多行文本垂直居中,
- 这是多行文本垂直居中,
- 这是多行文本垂直居中。
- div>
- /*css代码*/
- #div1{
- width: 300px;
- margin: 50px auto;
- border: 1px solid red;
- text-align: center; /*设置文本水平居中*/
- padding: 50px 20px;
- }

父级元素高度固定
本文一开始就提到css中的vertical-align属性,但是它只对拥有valign特性的元素才生效,结合display: table;,可以使得div模拟table属性。因此我们可以设置父级div的display属性:display: table;;然后再添加一个div包含文本内容,设置其display:table-cell;和vertical-align:middle;。具体代码如下:
- <div id="outer">
- <div id="middle">
- 这是固定高度多行文本垂直居中,
- 这是固定高度多行文本垂直居中,
- 这是固定高度多行文本垂直居中,
- 这是固定高度多行文本垂直居中。
- div>
- div>
- /*css代码*/
- #outer{
- width: 400px;
- height: 200px;
- margin: 50px auto;
- border: 1px solid red;
- display: table;
- }
- #middle{
- display:table-cell;
- vertical-align:middle;
- text-align: center; /*设置文本水平居中*/
- width:100%;
- }

但是,在IE7中显示效果如下:

这是因为IE7及以下的版本并不能很好的支持display:table和display:table-cell属性,当然,如果你不考虑IE7以下的版本的浏览器,上述方法是可以实现垂直居中。如果把IE7及以下版本考虑进去,我们可以通过用到CSS hack的知识来设置针对不同浏览器的属性。
- 提示:
本文由神整理自网络,如有侵权请联系本站删除!
本站声明:
1、本站所有资源均来源于互联网,不保证100%完整、不提供任何技术支持;
2、本站所发布的文章以及附件仅限用于学习和研究目的;不得将用于商业或者非法用途;否则由此产生的法律后果,本站概不负责!
相关内容
- CSS3圆角边框和边界图片效果实例 CSS3实现多样的边框效果css3 边框、背景、文本效果的实现代码CSS3动画之流彩文字效果+图片模糊效果+边框伸展效果实现代码合集利用CSS3伪元素实现逐渐发光的方格边框纯CSS3制作的鼠标悬停时边框旋转CSS3实现多背景模拟动态边框的效果css3实现六边形边框的实例代码
- CSS实现隐藏和显示功能的代码CSS文本超出指定宽度后隐藏并显示为省略号的实现方法利用css的样式对文本进行隐藏和显示等操作css样式显示省略号自定义宽度超过隐藏显示省略标记css样式的动态添加及显示和隐藏等零碎用法纯css3显示隐藏一个div特效的具体实现css和jquery设置文字的显示和隐藏利用CSS3的checked伪类实现OL的隐藏显示的方法从A页面连接到B页面后并直接把B页面的隐藏层显示-CSS教程-网页制作-网
- CSS3的column-fill属性对齐列内容高度的用法详解基于CSS3的CSS 多栏(Multi-column)实现瀑布流源码分享CSS3 Columns分列式布局方法简介css3 column实现卡片瀑布流布局的示例代码
- CSS实现进度条和订单进度条 手把手教你用CSS实现带箭头的流程进度条HTML5+CSS3网页加载进度条的实现,下载进度条的代码实例CSS3制作彩色进度条样式的代码示例分享基于CSS3实现可按进度百分比变色的进度条CSS3+JS实现iOS8风格loading加载进度条特效源码使用CSS实现阅读进度条
- 强制文本在一行内显示,并且后面有省略号效果的实现方法CSS实现标题文字过长部分显示省略号的方法CSS文本超出指定宽度后隐藏并显示为省略号的实现方法表格单元格内容超出时显示省略号效果(实现代码)CSS控制文本超出指定宽度显示省略号和文本不换行效果的实现CSS超出文本指定宽度用省略号代替和文本不换行CSS自动换行、强制不换行、强制断行、超出显示省略号CSS控制文本的长度 超过一行显示省略号的实现方法
- 关于负margin的一些应用CSS 之margin知识点(必看)css布局之负margin妙用及其他实现CSS的margin属性在页面布局中的使用攻略细说CSS中margin属性的使用 深入解析CSS中margin属性的使用CSS中使用负margin值来调整居中位置关于ol和ul的padding和margin默认值CSS属性探秘系列(六):margin
- 全民英雄低级控过挑战18-10关视频攻略_手机游戏_游戏攻略_
- 全民英雄低级控面对群攻护法必过攻略_手机游戏_游戏攻略_
- 全民英雄普通紫装合成公式一览_手机游戏_游戏攻略_
- 全民英雄战斗力快速提升小技巧推荐_手机游戏_游戏攻略_
点击排行
本栏推荐
