我正在嘗試設計一個上傳字段,並且我已經花了很多時間試圖修復它而沒有成功。我已經創建了一個簡單的jsfiddle來演示問題(如果你閱讀快速閱讀只讀粗體的要點)。造型上傳字段
火狐7:
- CSS3圓角(OK)
- 文字陰影(OK)
- 手光標僅出現在標籤(不正常的下半部,我希望手形光標應該可以看到懸停在標籤的任何一點)
IE 8:
- 沒有圓角(看起來差,但就是OK)
- 沒有文字陰影(沒問題,我知道有沒有爲它的支持)
- 手光標僅出現在標籤的下半部分(不好,我希望手形光標應該可見懸停在標籤的任何一點)
- 單擊標籤的上半部分文件上傳對話框不顯示(不是好的,我希望通過點擊la的任何一點來打開對話框BEL,像FF)
- 點擊它會出現一個閃爍的光標後(怪異,但誰到底在乎這個)
任何人有想法?
UPDATE:根據輸入的接收,here is another approach in jsfiddle:我建立一個按鈕,我綁定按鈕的單擊事件的單擊事件發送到文件上傳輸入。
下面是一些兼容性測試:
- IE 6的WinXP:工作
- IE 7的WinXP:工作
- IE 8 Win7的:工作
- FF 7的Linux:工作
- FF 8 Win7:作品
- Opera 11 Win7/Linux:不起作用
- Chrome 15 Win7/Linux:不工作
- Safari瀏覽器3.1的MacOSX:不工作
更新2:越來越近,在這個jsfiddle我在一些瀏覽器測試扔,在MSIE或Mozilla我用新辦法的情況下,否則舊的。
- IE 6的WinXP:工作
- IE 7的WinXP:工作
- IE 8 Win7的:工作
- FF 7的Linux:工作
- FF 8 Win7的:工作
- 歌劇11的Win7/Linux:不起作用
- Chrome 15 Win7/Linux:作品
- Safari 3.1 MacOSX:作品
所以我猜Opera不會因爲z-index而工作,要在下一個版本中修復它。
UPDATE 3:new version在Opera中也有效。 Opera標籤高度降低,因此標籤的所有區域均可點擊。所以現在它適用於我關心的所有瀏覽器,並且在外觀上可以接受。問題解決了。
它可能看起來愚蠢的,但爲什麼不隱藏目標文件,並使用圖片或一些一個是一個按鈕? – 2011-11-16 18:42:32
要補充一點,手形光標問題也是Google Chrome中的一個問題。 – JasCav
@Márcio因爲它不是一個按鈕,上傳事件受瀏覽器保護,您不能將它關聯到圖像或按鈕。 – stivlo