html - 如何使文件输入字段换行?

标签 html css file forms input

在 HTML 表单中,我有一个这样的文件字段:

<div class="filefield">
<input type="file" name="myfile" id="fileinput">
</div>

它显示一个按钮和按钮旁边的一些文本。如果尚未选择任何文件,则文本为:No file chosen。如果已经选择了一个文件,它会显示该文件的名称。

此文本显示在按钮的右侧。我希望它显示在按钮下方。我在 CSS 中尝试了很多东西,但没有任何效果,No file chosen 总是显示在按钮的右侧,即使 div 和输入都被赋予固定宽度,宽度仅为按钮,以及足够高的固定高度以容纳一个按钮和两行文本,文本仍然显示在 div 外部的右侧,而不是低于 div 内部空间的位置。如何使其换行以便文本显示在按钮下方?

最佳答案

@Guffa 的回答表明您不能弄乱该字段,您可以围绕它创建一个 hack。

按钮元素怎么样,点击时就像文件浏览器按钮一样?然后是保存该文件浏览器输入值的 span 元素?这肯定是一些 js hackery,但可以解决问题。

编辑

工作示例:http://jsfiddle.net/nmeAW/1/

编辑 2

更好的工作示例:http://jsfiddle.net/nmeAW/2/

关于html - 如何使文件输入字段换行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5737653/

相关文章:

html - 无法将 ul Dropdown 转换为 Select DropDown

css - Webkit 列的负边距问题

jquery - <div> 上的第二个 CSS 动画不适用于 jQuery toggleClass 方法

java - Byte[] 和 java.lang.OutOfMemoryError 按位读/写文件

linux - 通过在 bash 中附加来有条件地合并文件

python - BeautifulSoup - 如何遍历 "tr"标签?

html - 如何在不干扰CSS的情况下添加链接

html - 如何将排除的列表项与页边距对齐?

css - 操作系统之间具有不同垂直度量的自定义字体

iphone - 通过 Socket 发送文件 (iOS)