Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html &引用;至于;属性在Firefox的按钮内不起作用_Html_Css - Fatal编程技术网

Html &引用;至于;属性在Firefox的按钮内不起作用

Html &引用;至于;属性在Firefox的按钮内不起作用,html,css,Html,Css,我想通过将文本更改为“选择文件…”并隐藏文件名来自定义输入元素。此外,如果用户单击按钮,将打开一个窗口供用户选择文件。代码是 <button> <label for="upload"> Choose file ... </label> </button> <input type="file" id="upload" style="display:none"> 选择文件。。。 使用Chrome,如果我单击按钮,会弹出一个窗口供我选

我想通过将文本更改为“选择文件…”并隐藏文件名来自定义输入元素。此外,如果用户单击按钮,将打开一个窗口供用户选择文件。代码是

<button>
 <label for="upload"> Choose file ... </label>
</button>
<input type="file" id="upload" style="display:none">

选择文件。。。

使用Chrome,如果我单击按钮,会弹出一个窗口供我选择文件。但是它不适用于Firefox和IE。你知道如何使它适用于所有三种浏览器吗?谢谢。

标签标签不适用于按钮。它通常与单选按钮一起使用。以下内容应满足您的要求:


选择文件。。。

您的HTML无效。标签不能是按钮的后代

卸下按钮:

<label for="upload"> Choose file ... </label>
<input type="file" id="upload" style="display:none">
选择文件。。。
(在Firefox中测试。我手头没有IE的副本。)


如果你想要一个看起来像按钮的东西,那么就用CSS来设置它的样式。

试试看(这与javascript无关)。试着把按钮放在标签里面,而不是把标签放在按钮里面。@Barmar-这是无效的HTML。如果标签将表单控件(如按钮)作为子体,则任何for属性都必须与该表单控件的ID匹配。不能用一个标签标记两个表单元素。