作为一个很好的做法,尽量避免使用标识为造型。
而不是定义在#wrapper
选择器的过渡的,创建一个类含有像这样的transition
属性:
.opacity-transition {
transition: opacity 2s ease-in;
}
一旦过渡结束,这个类不会被任何更需要,并且可以是除去。
创建另一个类来初始隐藏#wrapper
元素。当这个类被删除时,它会触发转换。
.hidden {
opacity: 0;
}
代码段:
function fadeOnLoad() {
//Cache the selector.
var wrapper = document.getElementById("wrapper");
console.log(wrapper.className);
//Add event listener for transition end.
wrapper.addEventListener("transitionend", function() {
//Remove the class which is not needed anymore.
this.classList.remove("opacity-transition");
console.log(this.className);
});
//Remove hidden class to start the transition.
wrapper.classList.remove("hidden");
};
.opacity-transition {
transition: opacity 2s ease-in;
}
.hidden {
opacity: 0;
}
<body onload="fadeOnLoad()">
<div id="wrapper" class="opacity-transition hidden">
text</div>
</body>
'不透明度:1重要;'? ID选择器比类 – Banzay