首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Chrome上的will-change问题

Chrome上的will-change问题
EN

Stack Overflow用户
提问于 2016-05-30 20:27:37
回答 1查看 206关注 0票数 1

我注意到当我在一个固定的按钮上添加will-change (使用JS)时,它变得非常不稳定。这既适用于“将更改”按钮,也适用于没有它的按钮。

显示问题的示例:http://jsbin.com/kelajo/3/edit?html,css,js,output

显示问题的GIF:http://i.imgur.com/sTSkvFA.gifv

删除will-change行,两个按钮都将开始工作。

这是Chrome的问题,还是我遗漏了什么?谢谢。

EN

回答 1

Stack Overflow用户

发布于 2016-12-20 19:44:30

这实际上不是答案,但我需要与世界分享它:

我也有关于will-change属性的问题,所以我读到了这个:https://developer.mozilla.org/en/docs/Web/CSS/will-change它证明,这个属性应该被非常明智地使用:

注意,will-change实际上可能会影响元素的视觉外观

这就是我的问题:在这个例子中,will-change属性打乱了堆叠上下文(z-index重叠元素)。第一个元素具有此属性,而其他元素则没有(悬停在绿色div中的深色div上)。当我尝试使用will-change时,我花了几个小时才发现我的代码出了什么问题

代码语言:javascript
复制
.will-change {
  will-change: opacity;  
}

.list {
  position: relative;
}
.list-element {
  position: relative;
  max-width: 500px;
  height: 80px;
  padding: 10px;
  margin-bottom: 10px;
  background: #308e74;
  opacity: 0.8;
}
.list-element:hover {
  opacity: 1;
}
.hover-el {
  position: relative;
  height: 30px;
  background: rgba(0, 0, 0, .3);
}
.hover-el:hover .show-on-hover {
  display: block;
}
.show-on-hover {
  display: none;
  position: absolute;
  width: 100px;
  height: 300px;
  background: #e6841e;
  box-shadow: 0 2px 10px rgba(0, 0, 0, .5);
  z-index: 100;
}
代码语言:javascript
复制
<div class="list">
  <div class="list-element will-change">
    <div class="hover-el">
      <div class="show-on-hover"></div>
    </div>
  </div>
  <div class="list-element">
    <div class="hover-el">
      <div class="show-on-hover"></div>
    </div>
  </div>
  <div class="list-element">
    <div class="hover-el">
      <div class="show-on-hover"></div>
    </div>
  </div>
</div>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37525678

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档