制作元素移动的动画
Animate movement of elements
我正在尝试为搜索框的整个移动设置动画。到目前为止,不透明度和宽度都是动画,但一旦宽度设置为0并且动画完成,搜索框折叠的区域就会在没有动画的情况下进行折叠。相反,我想要的是宽度动态地影响其他元素的定位。
非动态调整大小
我的javascript apppends.show到搜索框
input.search-box {
opacity: 0;
width: 0px;
transition: 1s;
}
input.search-box.show {
width: 100%;
opacity: 1;
transition: 1s;
}
还有另一个问题是,在搜索图标和主页图标之间,不应该有空白的地方。我很确定是因为搜索框。
<li>
<a href="index.html"><i class="fa fa-home"></i></a>
</li>
<li class="search-box-list">
<input id="search-box" type="text" class="search-box special" placeholder="Input STEAMID..." />
</li>
<li class="search-icon-list">
<a href="#" class="fa fa-search search-icon"></a>
</li>
不使用width: 100%
,而是使用固定宽度:
width: 200px;
编辑:或如@nine所述,您也可以使用vw
单元!
示例:
$(".search-toggle").on("click", function(){
$(".search-box").toggleClass("show");
});
ul{
text-align: right;
}
ul li{
display:inline-block;
vertical-align:top;
}
input.search-box {
position:relative;
opacity: 0;
width: 0px;
transition: 1s;
}
input.search-box.show {
width: 200px;
opacity: 1;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<ul>
<li>
<a href="#"><i class="fa fa-home"></i></a>
</li>
<li>
<input class="search-box" type="search" placeholder="input STEAMID...">
</li>
<li>
<a class="search-toggle" href="javascript:;"><i class="fa fa-search"></i></a>
</li>
</ul>
(附言:空格很可能是由父填充引起的…)
相关文章:
- css动画和jquery.load()在移动设备上断断续续
- 使用Jquery和Tab内容移动制作动画
- 使大图像移动的jQuery动画更流畅
- 尝试在画布中对形状进行动画处理时,它会显示,但不移动
- 使用 JavaScript 动画通过箭头键移动矩形
- 如何使用一个移动的三角形/矩形创建画布动画
- GWD移动动画;t停止
- 如何在JS中随机化backgroundPosition而不使用鼠标移动来制作万花筒的动画
- 设置动画/移动putImageData放置的画布图像
- Edge动画:如何将javascript移动到html中
- 制作元素移动的动画
- 使用javascript上的动画将对象从中心移动到角落
- 可以使用jQuery'移动HTML背景吗;s设置动画
- CSS 动画移动页面 - 使用 CSS 修复当前元素上的页面滚动位置
- Javascript move 元素与鼠标移动事件 60 FPS 请求动画帧
- 我将如何修复由于上面的元素动画而移动的元素
- Jquery动画移动元素左不工作
- jQuery滚动图像动画:移动到错误的方向
- 用JavaScript动画/移动精灵时口吃
- 滑动拼图(javascript &HTML5) -需要动画移动元素