使用滑动动画将文本框“转换”为文本区域

时间:2012-06-09 12:37:35

标签: javascript jquery jquery-animate positioning

我正在尝试制作一个带有展开箭头的文本框,当单击它时,删除文本框并用更大的textarea替换它,并使用jQuery进行漂亮的滑动动画。问题是,右边相对定位的箭头和左边的标签随着文本框的展开向下滑动。我一直在尝试vertical-aligndisplaypadding和其他CSS属性的各种组合,以尝试将它们保持在最顶层,但都无济于事。有趣的是,该设计适用于Firefox,标签和箭头保留在我想要的位置,但不在Chrome或IE中。您可以看到作品here

1 个答案:

答案 0 :(得分:1)

您需要将vertical-align: top;设置为textarea,并且在动画制作时不要更改它。我在Chrome调试器中尝试过,它运行正常。

另外,为什么要用<input type="text" />交换<textarea>?为什么不从一开始只有<textarea>,只要给它一个小高度?

UPD。vertical-align: top;分配给您的<input>元素,以便在将其交换到textarea时标签和箭头停留在同一位置。如果需要,可以使用topmargin-top稍稍微调一下。

//我手头没有IE,所以目前无法帮助你......建议更改后IE中发生了什么?