坑一:
下面這段代碼:
<!DOCTYPE html>
<html lang="en">
<head>
? ? <meta charset="UTF-8">
? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">
? ? <meta http-equiv="X-UA-Compatible" content="ie=edge">
? ? <title>Document</title>
</head>
<style>
? ? *{
? ? ? ? margin: 0;
? ? ? ? padding: 0;
? ? }
? ? html{
? ? ? ? height: 100%;
? ? }
? ? body{
? ? ? ? width: 60%;
? ? ? ? height: 60%;
? ? ? ? border: 1px solid;
? ? ? ? margin: 100px auto;
? ? }
? ? .test{
? ? ? ? width: 100px;
? ? ? ? height: 100px;
? ? ? ? background-color: pink;
? ? ? ? margin: 200px auto;
? ? ? ? transition-property: width;
? ? ? ? transition-timing-function: linear;
? ? ? ? transition-duration: 2s;
? ? }
? ? body:hover .test{
? ? ? ? width: 300px;
? ? ? ? height: 200px;
? ? ? ? background-color: orange;
? ? ? ? transition-property: height;
? ? }?
</style>
<body>?
? ? ? ? <div class="test">
? ? ? ? </div>
</body>
</html>
先執(zhí)行transition-property: height;這個效果,后執(zhí)行? transition-property: width;

坑二:
下面這段代碼:
<!DOCTYPE html>
<html lang="en">
<head>
? ? <meta charset="UTF-8">
? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">
? ? <meta http-equiv="X-UA-Compatible" content="ie=edge">
? ? <title>Document</title>
</head>
<style>
? ? *{
? ? ? ? margin: 0;
? ? ? ? padding: 0;
? ? }
? ? html{
? ? ? ? height: 100%;
? ? }
? ? body{
? ? ? ? width: 60%;
? ? ? ? height: 60%;
? ? ? ? border: 1px solid;
? ? ? ? margin: 100px auto;
? ? }
? ? .test{
? ? ? ? width: 100px;
? ? ? ? height: 100px;
? ? ? ? background-color: pink;
? ? ? ? margin: 200px auto;
? ? ? ? transition-property: width;
? ? ? ? transition-timing-function: linear;
? ? ? ? transition-duration: 2s;
? ? }
</style>
<body>?
? ? ? ? <div class="test">
? ? ? ? </div>
? ? ? ? <script>? ? ? ? ?
? ? ? ? ? ? var test = document.querySelector(".test");
? ? ? ? ? ? test.style.width = "300px";? ? ?
? ? ? ? </script>
</body>
</html>
這段代碼不執(zhí)行動畫過渡效果,主要原因是transition在元素首次渲染頁面沒有結(jié)束情況下,是不會被觸發(fā)的。
想要觸發(fā)只需要將javascript那段代碼改成:
window.onload = function(){
? ? ? ? ? ? var test = document.querySelector(".test");
? ? ? ? ? ? test.style.width = "300px";
? ? ? ? }? ?
添加一段window.onload即可,window.onload代表頁面加載完成執(zhí)行。
