我有一个应用程序,它有一个初始登录页面,其中有一个用户名和密码输入框。此页面在IE 7、Safari、Firefox 4和5中运行良好,但在IE 8和9中不能正常工作。在IE 8/9中,当您调整缩放百分比时,用户名和密码将以不同大小的输入框显示。在做一些测试时,我注意到IE8/9中的文档模式处于Quirks模式。因此,我尝试将IE 9中的文档模式设置为IE 9标准模式,页面显示正确。然而,在IE8中,它没有影响。我唯一能做的就是在输入框的样式表中重新定义字体系列。这适用于IE 7、8和9,也适用于Safari和Firefox。
我也尝试过设置DOCTYPE和meta标签,但这些组合在IE8中似乎都不起作用。
我在下面包含了一个测试样式表和html,它们再现了这个问题。
有人知道为什么IE8/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 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> </td><td><input type=submit value=Login></td></tr>
</table>
</body>
</html>发布于 2011-06-15 00:45:58
您的输入长度取决于您的字体大小。但是许多表单元素并不继承您的字体系列。用时髦的字体(Comic Sans MS)和大号字体来测试它。
Related (除非第一个答案是错的,输入类型不继承字体系列)。
您可以在CSS (width:200px)中设置输入大小。
注意:INPUT.TEXT没有指向任何元素。.text是一个类。
https://stackoverflow.com/questions/6346523
复制相似问题