我有一个输入元素,当用户点击框时会向右增长。
.search {
display: inline-block;
width: 20px;
-webkit-transition: all .5s ease;
-moz-transition: all .5s ease;
transition: all .5s ease;
text-align: left;
}
.search:focus {
width: 250px;
-webkit-transition: all .5s ease;
-moz-transition: all .5s ease;
transition: all .5s ease;
text-align: left;
}
<form method="get" id="searchform" action="<?php bloginfo('home'); ?>/">
<input class="search" type="search" value="" name="s" id="s">
</form>
这个想法是输入元素从20px增长到250px。问题与转换不起作用无关: - )
问题是输入框的高度非常小。无论我尝试什么,都不会变得更大:
查看Fiddle
答案 0 :(得分:4)
您使用的是输入类型search
,它不会接受高度。
但添加-webkit-appearance:textfield;
将允许您添加填充以增加高度,或手动设置高度。
答案 1 :(得分:1)
将height:100px
添加到.search
,它对我来说变得越来越大。
.search {
display:inline-block;
width: 20px;
-webkit-transition: all .5s ease;
-moz-transition: all .5s ease;
transition: all .5s ease;
text-align:left;
height:100px;
}
希望这有帮助!
修改强>
工作代码段
.search {
display: inline-block;
width: 20px;
-webkit-transition: all .5s ease;
-moz-transition: all .5s ease;
transition: all .5s ease;
text-align: left;
height:100px;
}
.search:focus {
width: 250px;
-webkit-transition: all .5s ease;
-moz-transition: all .5s ease;
transition: all .5s ease;
text-align: left;
}
&#13;
<form method="get" id="searchform" action="<?php bloginfo('home'); ?>/">
<input class="search" type="search" value="" name="s" id="s">
</form>
&#13;
答案 2 :(得分:1)
您可以使用line-height
设置输入高度:
编辑: @wellagain答案是正确答案,Chrome和搜索输入存在错误。
.search {
-webkit-appearance: textfield;
width: 20px;
line-height: 50px;
transition: all .5s ease;
text-align: left;
}
.search:focus {
width: 250px;
}
<form>
<input class="search" type="search">
</form>
我也简化了你的例子。