定位实现水平垂直居中的两种方法(无需计算)

首先给想要居中的元素设置绝对定位,其父元素设置相对定位。

然后,方法一:top,left,right,bottom都设置为0,margin:auto,即可在父元素中水平垂直居中。

   方法二:top,left都设置为50%,然后transform:translate(-50%,-50%),如果其他地方也用到了transform并且设置transition容易误伤这里。

时间: 2024-12-04 16:52:26

定位实现水平垂直居中的两种方法(无需计算)的相关文章

用CSS实现水平虚线的两种方法

用CSS样式实现水平虚线的两种方法方法一:<br><br><hr size="1" noshade="noshade" style="border:1px #cccccc dotted;"/><br>方法二:<br><br><div style="border-top:1px dashed #cccccc;height: 1px;overflow:hidden

实现icon和文字垂直居中的两种方法-(vertical-align and line-height)

方法一:vertical-align 在w3school定义:该属性定义行内元素的基线相对于该元素所在行的基线的垂直对齐 百思不得骑姐 然后Google,反正在w3schools上面并没有找到定义 仅仅能写代码測试 而后个人理解,才作出如此解释> 该属性作用的对象:行内元素(inline,inline-block也有行内属性) 其它table-cell 经常使用属性值:top middle bottom 个人理解 个人觉得,普通情况下,这些字母自发"坐落"的这条线就是基线.然后两

使元素相对于窗口或父元素水平垂直居中的几种方法

如果一个元素具有固定或相对大小,要使其不管如何调整窗口大小或滚动页面,始终位于浏览器窗口中间,可使用如下方法: <!DOCTYPE html><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title><meta charset="utf-8&q

CSS水平垂直居中的几种方法

直接进入主题! 一.脱离文档流元素的居中 方法一:margin:auto法 CSS代码: div{ width: 400px; height: 400px; position: relative; border: 1px solid #465468; } img{ position: absolute; margin: auto; top: 0; left: 0; right: 0; bottom: 0; } HTML代码: <div> <img src="mm.jpg&quo

CSS水平垂直居中的几种方法2

直接进入主题! 一.脱离文档流元素的居中 方法一:margin:auto法 CSS代码: div{ width: 400px; height: 400px; position: relative; border: 1px solid #465468; } img{ position: absolute; margin: auto; top: 0; left: 0; right: 0; bottom: 0; } HTML代码: <div> <img src="mm.jpg&quo

未知宽高的图片水平垂直居中的几种方法

最近在项目中遇到不固定宽高的图片要水平垂直居中的情况,发现垂直居中存在兼容性问题,下面收集了一些方法,可根据需要权衡使用. 1. 背景法(兼容性好,简单,但不利于动态导入的图片) html: <div class="wrap"></div> css: .wrap{ width:300px; height:200px; background: url(../img/test.jpg) center center no-repeat; } 2. 图片外面用个p标签,

CSS子元素在父元素中水平垂直居中的几种方法

1. 水平居中(margin: auto;)子父元素宽度固定,子元素上设置 margin: auto; 子元素不能设置浮动,否则居中失效. #div1{ width: 300px; height: 300px; border: 1px solid red; } #div1 p { width: 100px; height: 100px; background-color: green; /*float: left; !*如果设置了浮动,则自动居中就会失效.*!*/ margin: 0 auto;

让一个元素水平垂直居中的几种方法

1.方法一——margin负 div.box{ weight:200px; height:400px; position:absolute; <!--设置元素的定位位置,距离上.左都为50%--> left:50%; top:50%; <!--设置元素的左外边距.上外边距为宽高的负1/2--> margin-left:-100px; margin-top:-200px; } 优点:兼容性好; 缺点:必须已知元素的宽高: 2.方法二——translate负50% div.box{ w

水平排列居中两种方法总结

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>水平排列方法</title> <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> </head> <