您现在的位置是:网站首页> 编程资料编程资料
CSS文本和div垂直居中方法总结 CSS水平垂直居中的几种方法总结css让容器水平垂直居中的7种方式利用CSS3的flexbox实现水平垂直居中与三列等高布局CSS设置文字图片垂直居中的方法总结深入理解CSS行高line-height与文本垂直居中的原理Flexbox制作CSS布局实现水平垂直居中的简单实例CSS设置DIV垂直居中的N种方法 兼容IE浏览器 CSS 实现垂直居中的几种方法(必看)CSS在固定宽高的div内实现垂直居中的实例详解CSS实现垂直居中的几种方法小结
2021-09-05
857人已围观
简介 这篇文章主要介绍了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的知识来设置针对不同浏览器的属性。
- <div id="outer">
- <div id="middle">
- <div id="content">
- 这是固定高度多行文本垂直居中(兼容IE7),
- 这是固定高度多行文本垂直居中(兼容IE7),
- 这是固定高度多行文本垂直居中(兼容IE7),
- 这是固定高度多行文本垂直居中(兼容IE7)。
- div>
- div>
- div>
- /*css代码*/
- #outer{
- width: 400px;
- height: 200px;
- margin: 50px auto;
- border: 1px solid red;
- display: table;
- *position:relative; //兼容IE7及以下版本
- }
- #middle{
- display:table-cell;
- vertical-align:middle;
- text-align: center; /*设置文本水平居中*/
- width:100%;
- *position:absolute; //兼容IE7及以下版本
- *top:50%;
- }
- #content {
- *position:relative; //兼容IE7及以下版本
- *top:-50%;
- }
子div垂直居中
1、根据子div具体大小设置偏移
如果子div固定大小,设定水平和垂直偏移父元素的50%,再根据实际长度将子元素向上和向左挪回一半大小
- <div id="outer">
- <div id="middle">
- 子div(固定大小)垂直居中
-
相关内容
- 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
- CSS的相邻兄弟选择器用法简单讲解CSS选择器的权重与优先规则分享CSS 选择器演示全面了解css 属性选择器举例讲解CSS的子元素选择器用法CSS选择器实现字段解析
- 对行内元素和块级元素的一些认识浅谈CSS块级元素与行内元素(内联元素)的区别和联系 进一步理解CSS编程中的块级元素和行内元素CSS行内元素和块级元素的居中实例分析全面了解行内元素与块级元素的区别
- 举例讲解CSS的子元素选择器用法CSS选择器的权重与优先规则分享CSS 选择器演示全面了解css 属性选择器CSS的相邻兄弟选择器用法简单讲解CSS选择器实现字段解析
- 全面了解link与import方式的区别link和@import的区别深入探讨引入CSS的方式有哪些?link和@import的有何区别应如何选择CSS @import与link的具体区别import link的具体区别CSS技巧:IE6用import导入CSS的问题探讨:网页外部引用CSS的两种方式CSS两种方式link和@import-CSS教程-网页制作-网页教学网css用import还是link的区别-CSS教程-网页制作-网页教学网CSS中link和@import的区别说明
点击排行
本栏推荐
