总结利用css设置元素垂直居中

作为前端攻城师,在制作web页面时都有碰到css制作水平垂直居中,我想大家都有研究过或者写过,特别的其中的垂直居中,更是让人烦恼,下面这篇文章主要给大家汇总介绍了关于利用css设置元素垂直居中的解决方法,有了这些方法就用再愁啦,需要的朋友可以参考下。

前言
 

元素的垂直居中也是我们日常网页布局中经常会遇到的问题,本文主要给大家介绍了关于利用css设置元素垂直居中的解决方法,文中介绍了多种情况的多种解决方法,相信会对遇到这个问题的朋友们带来一定的帮助,下面话不多说了,来一起看看详细的介绍吧。

html代码:

Text here

登录后复制

既然设置子元素的垂直居中,那就要知道父元素的高度,才能知道这所谓的中在哪,对吧?就像你想在一段距离的中间位置站住,那你首先需要知道这段距离有多长,你才能知道中间位置在哪.
注意,我所有的百分比高宽,都是建立在html,body {width: 100%;height: 100%;}这样的设置的基础之上的,如果你没有这样设置,.parent这个p的父元素又是body,body你又没有设置宽高,你就可能看不到效果,.parent这个p的高宽比是相对于它的父元素的,所以你在使用的时候需要确定.parent这个p的父元素设置了宽度和高度的.

立即学习“前端免费学习笔记(深入)”;

(1) 行内文本垂直居中

css代码:

.parent {    height: 100px;    border: 1px solid #ccc; /*设置border是为了方便查看效果*/}.child {    line-height: 100px;}

登录后复制

(2) 行内非文本垂直居中(以img为例)

html代码:

    @@##@@

登录后复制

css代码

.parent {    height: 100px;    border: 1px solid #ccc; /*设置border是为了方便查看效果*/}.parent img {    //注意此时应该保证图片自身的高度或者你设置的高度小于父元素的200px的行高,不然你看不出来居中的效果.    line-height: 100px;}

登录后复制

(3) 未知高度的块级元素垂直居中
 

html代码:

  

        sddvsds dfvsdvds  

登录后复制

第一种方法(不需要加padding):
 

css代码:

.parent {  width: 100%;  height: 100%;  position: relative;  /*display: table;*/}.child {  width: 500px;  border: 1px solid #ccc; /*设置border是为了方便查看效果*/  position: absolute;  top: 50%;  transform: translateY(-50%);}

登录后复制

第二种方法(不使用transform):
 

css代码:

.parent {    position: relative;    width: 100%;    height: 100%;}.child {  width: 500px;  border: 1px solid #ccc;  position: absolute;  top: 0;  bottom: 0;  left: 0;  right: 0;  height: 30%;  margin: auto;}

登录后复制

第三种方法(需要加padding):
 

css代码:

#parent {  padding: 5% 0;}#child {  padding: 10% 0;}

登录后复制

第四种方法:
 

(使用display: table,此种方法也适用于行内文本元素的居中):
 

css代码:

.parent {  width: 100%;  height: 100%;  display: table;}.child {  display: table-cell;  vertical-align: middle;}

登录后复制

第五种方法(flex布局,这里需要考虑兼容性奥!)
 

css 代码:

.parent {    width: 100%;    height: 100%; /*这里一定要写高度奥!*/    display: flex;    align-items: center;    justify-content: center;  }

登录后复制

(4) 已知高度的块级元素垂直居中
 

html代码:

  

        sddvsds dfvsdvds  

登录后复制

css代码:

#parent {  height: 300px;}#child {  height: 40px;  margin-top: 130px; /*这个只为父元素的高度减去这个元素的高度除以二计算得到的*/  border: 1px solid #ccc;}

登录后复制

以上就是我目前发现并亲自测试可行的一些方法,应该还有其他的方法

总结利用css设置元素垂直居中

以上就是总结利用css设置元素垂直居中的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3122029.html

(0)
上一篇 2025年3月29日 18:04:32
下一篇 2025年3月29日 18:04:39

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 利用CSS3 animation动画属性实现轮播图效果的方法详解

    css3的animation属性可以像flash制作动画一样,通过控制关键帧来控制动画的每一步,实现更为复杂的动画效果。下面通过本文给大家分享基于css3 animation动画属性实现轮播图效果,需要的朋友参考下吧 animation简介…

    编程技术 2025年3月29日
    100
  • 总结css清除浮动的几种方法及兼容性处理方法

    这篇文章主要介绍了详解css清除浮动float的七种常用方法总结和兼容性处理,非常具有实用价值,需要的朋友可以参考下 在清除浮动前我们要了解两个重要的定义: 浮动的定义:使元素脱离文档流,按照指定方向发生移动,遇到父级边界或者相邻的浮动元素…

    编程技术 2025年3月29日
    100
  • CSS3中transform属性

    在CSS3中,可以利用transform功能来实现文字或图像的旋转、缩放、倾斜、移动这四种类型的变形处理。 一.rorate(旋转) 用法:transform: rorate(45deg); 共一个参数“角度”,单位deg为度的意思,正数为…

    编程技术 2025年3月29日
    100
  • 纯css实现table固定列与表头中间横向滚动实例讲解

    这篇文章主要给大家介绍了关于如何利用纯css实现table固定列与表头,中间横向滚动的相关资料,文中通过示例代码详细的给大家介绍了关于实现该效果的思路与方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧。 前言 …

    编程技术 2025年3月29日
    100
  • css编写注意事项总结分享

    css的编写是需要积累的,而一个好的css编写习惯对我们将来的成长是非常有利的,我会把我平时看到的或者遇到的会不定时的更新到这里,不时翻一下,但求有所进步。 如果各位看官也有看法和建议,评论下,我也会更新进来,谢谢! 1、css选择符是从右…

    编程技术 2025年3月29日
    100
  • css 宽高自适应的div元素以及如何垂直居中

    在我们 编写css 样式的时候经常会遇见一个问题 那就是一个 宽高未知的元素 要让他 垂直居中如何实现这个呢 下面是我常用的两种方法 上代码   下面的是 结构代码  //此处为父组件 我们会设置父级的宽高并让其居中  //子组件我们要实现…

    编程技术 2025年3月29日
    100
  • css引入的方式有哪几种

    引入方式3种:行内添加定义style属性值,页面头部内内嵌调用和外链调用, 区别: 1.link是xhtml标签,除了加载css外,还可以定义RSS等其他事务,@import只能加载CSS 2.link引用CSS时候,页面载入的时候同时加载…

    编程技术 2025年3月29日
    100
  • CSS :focus-within的具体使用方法讲解

    这篇文章主要介绍了css :focus-within的具体使用的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 CSS的世界真是一个神奇的世界。可能众多前端开发者听说过 :focus 并未听说过 :focus-within 。那…

    编程技术 2025年3月29日
    100
  • 利用纯CSS实现居中的方法总结

    这篇文章主要给大家介绍了关于利用纯css实现居中的七大方法,其中包括line-height居中法、table-cell居中法、上下左右定位+margin居中法、50%定位+margin居中法、50%定位+translate居中法、flexb…

    编程技术 2025年3月29日
    100
  • CSS浮动写法

    这一章主要记录定位与浮动常用的。 1.浮动 说到浮动我们要先说说标准流和浮动流。 1.标准流 标准流很常见,浏览器默认的方式就是标准流。 标准流怎么理解呢? 实现我们得知道CSS中的三种元素分类。 行内元素,块级元素,行内块级元素 行内元素…

    编程技术 2025年3月29日
    100

发表回复

登录后才能评论