2011-06-14 99 views
0

我有一個應用程序有一個初始登錄頁面, 有一個用戶名和密碼輸入框。 此頁面在IE 8和9的IE 7,Safari,Firefox 4 & 5中可以正常工作,但不能在 中使用。在IE 8/9中,當您調整縮放百分比時,用戶名和密碼會以不同大小的輸入框顯示 。 雖然做了一些測試,我注意到在IE 8/9中文檔模式是在怪癖模式。 所以我嘗試將IE 9中的文檔模式設置爲IE 9標準模式,並且 頁面顯示正確。但是在IE 8中它沒有任何影響。 我能夠開始工作的唯一一件事就是在樣式表中爲輸入框重新定義 字體系列。這適用於IE 7,8和9以及Safari和Firefox的 。IE 8 - 字體家族顯示問題

我自己也嘗試設置這些 組合的DOCTYPE和meta標籤,但似乎沒有在IE 8

工作,我包括一個測試樣式表和HTML低於再現 問題。

有誰知道爲什麼IE 8/9會需要這個?除了重新定義字體系列之外,是否還有其他的 方法來處理這個問題?

謝謝。

在IE 7下面作品樣式表,Safari和Firefox 4 & 5.在IE 8/9它會導致 的用戶名和密碼與不同的長度來顯示,除非我使用的註釋 脫節:

樣式表:

body     { font-size: x-small; font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular;} 


form     { font-size: 100%; } 
input     { font-size: 110%; } 
/*input     { font-size: 110%; font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular; }*/ 
INPUT.TEXT    { font-size: 100%; } 
select     { font-size: 110%; } 
textarea    { font-size: 110%; } 

HTML:

<html> 
<head>     
<title>Login</title> 
<link rel="stylesheet" type="text/css" href="./mystyle.css"> 
</head> 
<body>     
<table>     
<tr><td>User&nbsp;Name: </td><td><input type=text name=username size=20 value=""></td></tr> 
<tr><td>Password: </td><td><input type=password name=pass size=20></td></tr> 
<tr><td>&nbsp;</td><td><input type=submit value=Login></td></tr> 
</table>     
</body> 
</html> 

回答

0

你輸入長度是根據您的FON T-大小。但許多表單元素不會繼承你的字體系列。 用時髦的字體(Comic Sans MS)和大字號測試它。

Related(除了第一個答案是錯誤的,輸入類型不會繼承font-family)。

您可以在CSS中設置輸入大小(width:200px)。

小注:INPUT.TEXT指向沒有元素。 .text是一類。

+0

好的。謝謝。我想我仍然不明白爲什麼字體家族似乎在IE 7,Safari和Firefox中繼承,但在IE 8/9中,您需要指定字體家族進行輸入。 – Bruce 2011-06-14 17:32:23

+0

除非您強制執行,否則不會繼承。玩[這jsFiddle](http://jsfiddle.net/Vz78R/),你會明白。我無法測試IE7,但我很確定這是一個渲染字體不同的問題。所以,對於IE,你必須重新定義字體屬性... – Kraz 2011-06-14 18:57:15