搜索
写经验 领红包
 > 情感

浮动水平居中(如何保持浮在水面)

导语:如何保持浮层水平垂直居中

浮动水平居中(如何保持浮在水面)

(1)利用绝对定位和transform

<div class=>    <div class=>    </div></div>.children{    position: absolute;    top: 50%;    left: 50%;    -webkit-transform: translate(-50%,-50%);    background: black;}

如果不确定子元素宽高度情况下,可以用此方法,不过css3属性不兼容IE低版本浏览器

(2) 利用flexbox

.parent{ justify-content:center; align-items:center; display: -webkit-flex;}

(3)将父元素定位,子元素绝对定位,利用margin负值为子元素宽高的一半来实现。

<div class=>      <div class=></div>      <span></span>    </div>    .parent{          height:400px;//有除对定位元素外其它元素时可不设,若没有则需要           position: relative;           background: red;        }      .children{           width: 200px;           height: 200px;           margin: -100px 0 0 -100px;           background: black;           position: absolute;           top: 50%;           left:50%;      }

(4) 利用定位与margin: auto;

<div class=>    <div class=>哈哈</div>  </div>       .parent{               width: 600px;               height: 400px;               background: red;               position: relative;          }          .child{               width: 200px;               height: 200px;               position: absolute;               top: 0;               left: 0;               bottom: 0;               right: 0;               margin: auto;               background: black;          }

原理:因为 parent 宽度等于 child宽度 + left + right + marginLeft + marginRight,当设置了left:0;right:0;margin: auto;时候,就相当于左右平分了宽度,所以会水平居中,垂直方向也是一样的道理

免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请反馈,一经查实立刻删除内容。本文内容由快快网络小涵创作整理编辑!