JQuery 动画和 CSS 过渡不协调
JQuery animate and CSS transition not coordinating
我正在尝试完成一个简单的转换。我希望 "Welcome" 文本向下移动并同时缩放大小。
似乎当我 运行 这段代码时, "Welcome" 文本稍微向下移动,停止,文本大小增加到 js 中指定的数量,然后它继续移动到我指定的位置在 js.
我哪里做错了,如何让他们同时过渡?
https://codepen.io/anon/pen/JzgwNx
谢谢。
$(document).ready(function(){
$("#welcome").animate({top: "300px"}, 1500 );
$("#welcome").css({fontSize: "70px", transition: "1.5s"});
});
.container {
width: 1000px;
margin: 0 auto;
border: 1px solid black;
}
p {
font-size: 5em;
color: white;
font-family: "Helvetica";
text-align: center;
margin-top: 153px;
}
nav {
background: transparent;
height: 3vw;
/*width: 100%;*/
text-align: right;
}
ul {
margin-top: 17;
}
nav li {
display: inline;
/*float: right;*/
margin: 0 5px;
padding: 10px;
padding-top: 15px;
}
nav a {
text-decoration: none;
font-size: 20px;
color: white;
font-family: "Helvetica";
transition: 0.25s;
}
nav a:hover {
border-bottom: 3px solid gray;
padding-bottom: 5px;
font-size: 22px;
font-weight: 500;
transition: 0.25s;
}
header {
background: url(main.jpg);
height: 100vh;
}
#welcome {
color: black;
font-family: "Helvetica";
font-size: 30px;
text-align: center;
position: relative;
}
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<header>
<nav>
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
</ul>
</nav>
<h1 id="welcome">Welcome</h1>
</header>
You can achieve it using keyframe css.
我正在尝试完成一个简单的转换。我希望 "Welcome" 文本向下移动并同时缩放大小。
似乎当我 运行 这段代码时, "Welcome" 文本稍微向下移动,停止,文本大小增加到 js 中指定的数量,然后它继续移动到我指定的位置在 js.
我哪里做错了,如何让他们同时过渡?
https://codepen.io/anon/pen/JzgwNx
谢谢。
$(document).ready(function(){
$("#welcome").animate({top: "300px"}, 1500 );
$("#welcome").css({fontSize: "70px", transition: "1.5s"});
});
.container {
width: 1000px;
margin: 0 auto;
border: 1px solid black;
}
p {
font-size: 5em;
color: white;
font-family: "Helvetica";
text-align: center;
margin-top: 153px;
}
nav {
background: transparent;
height: 3vw;
/*width: 100%;*/
text-align: right;
}
ul {
margin-top: 17;
}
nav li {
display: inline;
/*float: right;*/
margin: 0 5px;
padding: 10px;
padding-top: 15px;
}
nav a {
text-decoration: none;
font-size: 20px;
color: white;
font-family: "Helvetica";
transition: 0.25s;
}
nav a:hover {
border-bottom: 3px solid gray;
padding-bottom: 5px;
font-size: 22px;
font-weight: 500;
transition: 0.25s;
}
header {
background: url(main.jpg);
height: 100vh;
}
#welcome {
color: black;
font-family: "Helvetica";
font-size: 30px;
text-align: center;
position: relative;
}
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<header>
<nav>
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
</ul>
</nav>
<h1 id="welcome">Welcome</h1>
</header>
You can achieve it using keyframe css.