黑松山资源网 Design By www.paidiu.com

今天有空写了一个自己主页的网站,浏览器兼容(主要ie 9以上和chrome),有一个以前的问题也是很常见的问题,既然遇见了,索性就记录下来。直接看问题吧

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>文档标题</title>
</head>
<body>
	<div class="aaa">
      <div>
        
      </div>
  </div>
</body>
</html>
<style>
.aaa{
 	 width:700px;
 	 height:500px;
 	 position:absolute;
	 background-color:red;
  	 display: flex;
  	 align-items: center;
}
.aaa div{
  	height: 200px;
  	width:200px;
  	position: absolute;
 	background-color:yellow;		
}
</style>

前提:适合子元素需要水平居中,但垂直方向需要进行position:absolute,如果是进行position:relative或者其他,在iechrome都是一样的,都要以子元素width中点为基点。

ie下: 父容器中属性:display: flex;align-items: center;是水平居中,但是基点是左上角,如下图。如果想要水平居中,则需要加:transform:translateX(-50%),这意思就是将作用在元素上的总体位置向左移动自身width的50%,好处就是不管自知不知道该元素的width都可以。

详解flex和position兼容采坑笔记

chrome: 父容器中属性:display: flex;align-items: center;直接将子元素进行水平居中,基点是以子元素width的中点,而不是ie中的左上角;

详解flex和position兼容采坑笔记

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

黑松山资源网 Design By www.paidiu.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
黑松山资源网 Design By www.paidiu.com