嗨的file_field_tag文本框的大小,更改爲鍍鉻和Firefox
我有一個問題,試圖改變對鉻和FF file_field_tag的默認文本框,它工作正常,在IE瀏覽器,但是,從其他瀏覽器是不適用大小。
我的代碼是。
file_field_tag 「#{} compliance.id _document」:大小=>「2
不知道如果我可能做錯了什麼,但我相信它,我有一個非常小的事情錯過。
預先感謝
嗨的file_field_tag文本框的大小,更改爲鍍鉻和Firefox
我有一個問題,試圖改變對鉻和FF file_field_tag的默認文本框,它工作正常,在IE瀏覽器,但是,從其他瀏覽器是不適用大小。
我的代碼是。
file_field_tag 「#{} compliance.id _document」:大小=>「2
不知道如果我可能做錯了什麼,但我相信它,我有一個非常小的事情錯過。
預先感謝
的HTML 4.01規範指出這個屬性,在<input type="file">
情況下,定義了寬度以像素爲單位,而不是以字符。
http://www.w3.org/TR/html4/interact/forms.html#h-17.4
除此之外,你應該使用寬度定義一個CSS。你有兩種選擇:使用內聯樣式:
file_field_tag "#{compliance.id}_document", :style="width: 2em"
或(最好)一類添加到標籤,和CSS定義發生在你的樣式表:
file_field_tag "#{compliance.id}_document", :class="short"
/* CSS */
input.short {
width: 2em;
}
/* ..or if you expect some intelligent browsers, you may be more specific: */
input[type='file'].short {
width: 2em;
}
您可能需要試驗很少,因爲文件控制可能會拒絕接受你的寬度。每個瀏覽器的默認樣式表規則可能會定義一些其他規則,比您的規則更強大。
對於Firefox,您可能會在文件forms.css
中看到定義。在我的系統上,位置是/usr/lib64/xulrunner-1.9.2/res/forms.css
。
有一個定義,它可以幫助你:
input[type="file"] > input[type="text"] {
....
定義寬度input[type="file"].short > input[type="text"]
,你應該確定。但請注意,此規則可能會在每個瀏覽器版本中更改。
謝謝阿森,內聯風格工作得很好,實際上試圖指定在紅寶石領域的大小..我用:style =>「寬」代替。 – 2010-11-05 10:01:52
您確定此尺寸適用於HTML嗎?這可能不是鐵軌問題。但HTML兼容性:( – shingara 2010-11-05 09:46:10