在IE7 (在兼容性视图中严格使用IE8 )中运行时,页面会遇到特殊的故障。当我使用XP模式时,在IE6中也会出现类似的错误(还有一些其他错误),但我并不太担心IE6的兼容性。
也就是说,当输入框应该作为行内元素居中时,它是左对齐的。相关CSS:
form#prompt {
position: absolute;
height: 300px;
width: 600px;
margin: -150px 0 0 -300px;
top: 50%;
left: 50%;
text-align: center;
}
input#password {
margin: 10px auto;
padding: 5px 10px;
text-align: center;
width: 398px;
display: inline;
}相关HTML:
<form id="prompt">
<input type="text" name="password" id="password" />
</form>现在真正奇怪的是,当您触发表单上的提交侦听器时,它会返回false并初始化回调$('#prompt_output').text(' ').css('opacity',0).text('Access granted. Loading...').fadeTo(200,1);,一切都会正常工作。输入权本身。事实上,即使回调只是$('#prompt_output').text(' '),它也能正常工作。只选择元素$('#prompt_output');不会做任何事情。
任何帮助都将不胜感激。
发布于 2009-11-27 00:55:25
在不对CSS/markup进行重大更改的情况下,我认为这解决了ie7 (未在ie6中测试)中的问题。
试着用标签包住输入--我不知道为什么它能工作,我只在ie7,ie8和火狐上测试过,但它似乎起到了作用。
<label for="password" class="instruction">
Access restricted: enter password
<br>
<input name="password" id="password" type="text">
</label>发布于 2009-11-26 22:40:27
我已经通过an emulator运行了您的页面,这显然是IE7和以前版本的问题。它可以在FF和IE8上工作。但我想你已经知道了。
我建议你做一个快速而棘手的修复--将onload添加到将运行$('#prompt_output').text(' ')的<body>中,只是为了把事情弄清楚。当你有时间探索IE6/7的bug时,我建议你试着改变布局,因为我认为IE不知道如何正确解释你的CSS。
https://stackoverflow.com/questions/1801435
复制相似问题