IE8密码字段显示输入的值而不是显示星号

时间:2013-09-02 10:14:12

标签: php html css internet-explorer-8

在我的网站中,密码字段显示输入的值,而不是显示星号符号。这适用于所有其他浏览器。 IE7和IE9也可以。仅在IE8中我没有得到它...任何帮助将不胜感激。

对于参考:只需检查网站并点击登录框中的登录,您就可以查看该密码字段的问题。

<input type="password" name="password" id="password" value="Password" 
onblur="if(this.value == '') { this.style.color='#bbb'; this.value='Password'; this.type='text'} 
else {this.type='password';}" 
onfocus="if (this.value == 'Password') {this.style.color='#000'; this.value=''; this.type='password'} else {this.type='password';}" style="color: rgb(0, 0, 0);">

1 个答案:

答案 0 :(得分:2)

我猜这里是因为我不想查看您的所有代码,但我认为当用户关注<input type="text" />时,您正在用<input type="password" />替换input 。我不认为这是最好的跨浏览器解决方案。

如果您想支持旧浏览器,则需要使用javascript解决方案,因为HTML5 placeholder值不适用于所有浏览器。

一个好的解决方案是使用位于<label>下的input标记,而不是伪造它。有关示例,请参阅:http://blog.stannard.net.au/2011/01/07/creating-a-form-with-labels-inside-text-fields-using-jquery/

此解决方案的优点包括跨浏览器兼容性,可访问性和语义标记。