7

3我正在更改文件输入 HTML 标记的宽度:

<input type="file" id="newFilename" name="Filename">
input[type="file"] {width:380px !important}

在 Firefox 3、Chrome 和 Safari 中,它可以完美运行。

在 Firefox 4 中,我无法让它工作。宽度保持不变!

演示:http: //jsfiddle.net/LwzW9/1/

用 Firebug 检查我注意到<input>变化的大小,但我并没有真正看到变化:(见图)

在此处输入图像描述

有任何想法吗?这是一个已知的错误?

谢谢。

4

2 回答 2

13

我在使用 uniform.js 时遇到了同样的问题,这种解决了问题:

<input type="file" size="X">

或者

$('input[type="file"]').attr('size', 'X');

其中 X 是您定义的字符数。为了在其他浏览器中安全,您的 CSS 中还应该有正确的宽度。

小提琴:http: //jsfiddle.net/EfntV/

于 2011-05-10T21:53:15.840 回答
2

我注意到你有

width: 380px !important; //line 94

这将覆盖#newFilename {width:280px}

请注意 ,我不能 100% 确定它是如何工作的,因为您使用的是更具体的 CSS 选择器来更改宽度。需要一些样本来查看

于 2011-04-06T12:18:46.657 回答