2010-01-04 80 views
10

我在HTML頁面中有一個密碼字段,它在輸入密碼時不顯示子彈或星號,而是一個看起來是問號符號的小方塊。爲什麼IE8在HTML密碼字段中顯示問號而不是項目符號?

我試過這個在Firefox中,並且在那裏顯示正常的項目符號,就像在其他Web窗體中輸入密碼一樣。

有沒有方法HTML,CSS或Javascript可以影響什麼符號顯示?我們有一個相當複雜的Web框架(Oracle ADF富客戶端),儘管基於相同框架的其他應用程序不會顯示此行爲。

+1

可能與字符編碼有關。 – 2010-01-04 13:20:56

+0

它可能,但據我們所知,頁面是以UTF8格式提供的。 – 2010-01-04 13:35:12

+0

您是否根據瀏覽器使用了不同的css表單(例如,ie.css表單)?如果是這樣,我會嘗試將FF用戶代理更改爲IE並查看它是否被複制。此外,這是真正的多臺計算機與不同的配置(可能是一個搞砸的系統配置) – Cryophallion 2010-01-04 14:09:22

回答

15

這是一個字體問題。 IE試圖使用U + 25CF黑色圓圈字符(●,與SO使用的同一個徽章)來呈現其密碼字符,但是在正在使用的字體中找不到字形。

,如果你已經改變了<input>元素的字體不包含字形的這個角色,或者,如果用戶已經撥弄自己FontSubstitutesMS Shell Dlg,字體的IE使用到的font-family這可能發生在默認情況下渲染表單域,指向包含●的字形的「Microsoft Sans Serif」以外的內容。

Firefox有自己的字體後退算法與IE/Windows分開,它們更有可能回落到包含●的不同字體。

+0

就是這樣,謝謝!字體是Calibri .. – 2010-01-04 15:32:41

+0

這個問題還有更多的問題:使用Calibri,字符U + 25CF在類型爲「text」的輸入中顯示得很好,但同一個字符U + 25CF顯示爲帶有問號的正方形在類型爲「password」的輸入的掩碼文本中。 – 2012-06-25 15:10:16

+2

密碼輸入的行爲與Internet Explorer 8中丟失的字形方面不一致。對於文本輸入/其他元素(span,div ...)中顯示的文本,會有一連串後退字體用於查找缺少字形。如果在CSS中選擇的font-family中找不到字形,默認情況下,將使用Internet選項「Times New Roman」/「Courier New」中配置的默認字體查找字形。如果在配置的默認值中找不到字形,則會在另一個系統字體中查找該字形。在密碼輸入中情況並非如此,它看起來更像是一個bug而不是一個功能。 – 2012-06-25 16:11:25

相關問題