之前在做手机项目时,用到很多自定义弹窗,然后要求都垂直水平要居中,最开始的时候想用calc来计算,可是css3 的calc兼容性不是很好,于是后来就借助了js来计算, 今天偶然看到别人的一个方法,瞬间感觉自己做了很多无用功~~ translate,translate,translate,translate.. 简单的css代码就可以实现: .align{width:300px; height:300px; border:5px solid #; position:absolute; left:%…
1. 宽高固定 设置要水平垂直居中的 div 的 position 为 absolute,left:50%; margin-left为负的这个元素宽度的一半,同理,top:50%;margin-top为负的这个元素的高度的一半. #child { width:300px; height:200px; position:absolute; left:50%; margin-left:-150px; top:50%; margin-top:-100px; } 2. 宽高不固定 由 1 可演变,既然…
1.如何让不固定元素宽高的元素垂直水平居中 .center { position: absolute; top: 50%; left: 50%; background-color: #000; width:50%; height: 50%; transform: translateX(-50%) translateY(-50%); } flex布局写法: .center{ display:flex; justify-content:center align-items:center; } 2.禁…
div+css实现未知宽高元素垂直水平居中.很多同学在面试的时候都会遇到这样的问题:怎么用div+css的方法实现一个未知宽高的弹出框(或者图片)垂直水平居中??如果用JS的话就好办了,但是JS的使用会对页面性能造成影响,而且能用CSS实现的干嘛用JS呢,嘿嘿 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>div+…
这里不讨论行内元素的居中!! 盒子垂直居中+水平居中的需求时经常遇到的,看到的较多实现逻辑是固定content-box的宽度,通过让margin-left和margin-top等于宽或高的负一半来实现,抑或不固定宽度,通过JS调整margin-left和margin-top的值,这俩种方法原理都一样. 而我接下来要讲的是content不定宽的情况下,CSS的源生实现. 利用table实现垂直水平居中 主要利用td的vertical-align: middle;属性实现垂直居中,当然你可以用dis…
设置要水平垂直居中的div的position为absolute,left:50%;margin-left为负的这个元素宽度的一半,同理,top:50%;margin-top为负的这个元素的高度的一半. 由此,便可以实现子元素的上下左右居中的效果,快去试试把 div{ width:300px; height:200px; position:absolute; left:50%; margin-left:-150px; top:50%; margin-top:-100px; }…
1.已知块级元素的宽和高,使用绝对定位+外边距设定水平垂直居中. 父元素position:relative,子元素position:absolute;top:50%;left:50%;margin-top:-height/2;margin-left:-width/2; 效果图如下 代码: <div class="box"> <div class="center-box1"> <p>[第一种方法]知道长和宽,使用绝对定位+外边距设定…
今天分享一个利用css3新特性实现垂直水平居中的方法. 通过对元素进行绝对定位再配合transform中的translate实现. 代码如下: html <div id="content"> <div class="a"> <img src="...jpg" /> </div> </div> css #content{position:relative;height:300px;widt…
js实现未知宽高的元素在指定元素中垂直水平居中:本章节介绍一下如何实现未知宽高的元素在指定元素下实现垂直水平居中效果,下面就以span元素为例子,介绍一下如何实现span元素在div中实现水平垂直居中效果,代码如下: <!DOCTYPE html><html><head><meta charset=" utf-8"><meta name="author" content="http://www.soft…
CSS设置行内元素的水平居中 div{text-align:center} /*DIV内的行内元素均会水平居中*/ CSS设置行内元素的垂直居中 div{height:30px; line-height:30px} /*DIV内的行内元素均会垂直居中*/ PS:当然,如果既要水平居中又要垂直居中,那么综合一下 div{text-align:center; height:30px; line-height:30px} CSS设置块级元素的水平居中 div p{margin:0 auto; widt…