为什么我的课前过渡完全没有?聚合物

时间:2017-07-24 12:24:23

标签: javascript html css polymer

我的代码会导致阴影变得可见,但它没有响应出现/消失的任何形式的过渡。

有人可以帮忙吗?

enter image description here

实际应用的CSS

.wrapper {
      position: relative;
      z-index: 0;
      display: inline-block;
      width: 100%;
      transition: all 2s;
    }

    .wrapper.shadow:before {
      position: absolute;
      z-index: 1;
      top: 0;
      width: 100%;
      height: 10px;
      box-shadow: inset 0px 10px 6px -3px rgba(252, 29, 0, 1);
      pointer-events: none;
      content: "";
      opacity: 1;
      transition: all 2s;
    }

请参阅我的扩展代码here

修改 updated fiddle with "inhert" being used

2 个答案:

答案 0 :(得分:1)

首先不存在伪元素,因此您无需转换。

使用opacity或其他东西创建一个隐藏的默认状态,然后当它切换到它时,它应淡入视图。

示例

.wrapper {
  position: relative;
  z-index: 0;
  display: inline-block;
  width: 100%;
  transition: all 2s;
}
.wrapper:before {
  position: absolute;
  z-index: 1;
  top: 0;
  width: 100%;
  height: 10px;
  box-shadow: inset 0px 10px 6px -3px rgba(252, 29, 0, 1);
  content: "";
  opacity: 0;
  transition: all 2s;
}

.wrapper.shadow:before {
  pointer-events: none;
  opacity: 1;
}

答案 1 :(得分:0)

如上所述here

  

你只需要利用经常被遗忘的继承值[..]我们不能(还)直接使用自定义动画定位伪元素。

意味着你需要在 .wrapper .shadow 选择器中放置转换:2s all;