【发布时间】:2015-07-29 06:52:20
【问题描述】:
如果您看到我分享的代码示例,您可以看到覆盖在框外。我将问题追溯到transition 属性。
我想删除 div 之外的内容。溢出没有按预期工作。 (删除transition 有效,但如果可能,我想保留它)
感谢任何帮助
代码
var timer = setInterval(function() {
document.querySelector(".qs-timer-overlay").style.opacity = (document.querySelector(".qs-timer-overlay").style.opacity * 1) + 0.1;
if (document.querySelector(".qs-timer-overlay").style.opacity * 1 == 1) {
clearInterval(timer);
}
}, 1000);
.qs-main-header .qs-timer {
padding: 13px 10px;
min-width: 130px;
text-align: center;
display: inline-block;
background-color: #dd8b3a;
color: #FFF;
font-size: 20px;
border-radius: 50px;
text-transform: uppercase;
float: right;
cursor: pointer;
position: relative;
overflow: hidden;
}
.qs-main-header .qs-timer-overlay {
z-index: 1;
width: 10%;
max-width: 100%;
position: absolute;
height: 100%;
top: 0;
left: 0;
background-color: #c7543e;
opacity: 0.0;
/* border-radius: 50px 50px 0px 50px; */
}
.qs-main-header .qs-timer-content {
z-index: 2;
position: relative;
}
.scale-transition {
-webkit-transition: all 1s;
transition: all 1s;
}
<div class="qs-main-header">
<div class="qs-timer scale-transition ng-hide" ng-show="visibility.timer">
<div class="scale-transition qs-timer-overlay"></div>
<div class="qs-timer-content ng-binding">0 <span class="ng-binding">Sec(s)</span>
</div>
</div>
</div>
【问题讨论】:
-
这是一种已知行为。将
opacity: 0.99;添加到.qs-timer可以解决此问题,但我没有明确解释为什么会这样。 -
谢谢伙计。我已经看到了前面提到的这个解决方案。但我将它应用到了错误的 div 中。另外,如果您将其添加为答案,我可以将其标记为选定答案。
标签: javascript html css css-animations