transform父元素对fixed子元素的影响

本文探讨了在应用transform属性的父元素中,fixed子元素的定位问题。通过实例对比,展示了父元素transform如何影响子元素的fixed定位,以及在不同浏览器下的表现差异。

在应用了属性transform的父元素上,若其拥有fixed属性的子元素,则该子元素的fixed属性讲失效,并将以其父元素为定位基准

详情请看例子:

<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
<style>
	.outer {
	  overflow: hidden;
	  width: 300px;
	  height: 300px;
	  background: yellow;
	}
	.mid {
	  margin: 20px;
	  width: 200px;
	  height: 200px;
	  transform: translate(0, 0);
	  background: greenyellow;
	}
	.inner {
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100px;
	  height: 100px;
	  background: pink;
	}
</style>
<body>
	<div class="outer">
  		<div class="mid">
    		<div class="inner"></div>
  		</div>
	</div>
</body>
</html>

以上代码,所呈现的布局样式为:

若我们删除去父元素的transform属性:

代码为:

<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
<style>
	.outer {
	  overflow: hidden;
	  width: 300px;
	  height: 300px;
	  background: yellow;
	}
	.mid {
	  margin: 20px;
	  width: 200px;
	  height: 200px;
	  background: greenyellow;
	}
	.inner {
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100px;
	  height: 100px;
	  background: pink;
	}
</style>
<body>
	<div class="outer">
  		<div class="mid">
    		<div class="inner"></div>
  		</div>
	</div>
</body>
</html>

则此时的布局样式将变为:

由此可见,其父元素的transform对fixed子元素的影响;

注,此实例在chorme以及firefox下有效,IE环境等不受影响

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值