HTML占位符浏览器兼容性
哪些浏览器支持文本input的占位符html标记? Internet Explorer是否支持它? (我有一个JavaScript占位符,我可以使用不支持它的浏览器。)
<input type=TEXT placeholder="placeholder here" />
目前除了IE 9以及Opera mini以外,所有主stream浏览器都支持它。
有关更新,请查看w3schools-specs甚至更好,查看此概述 。
对于任何感兴趣的人来说,这是我使用的jQuery Fallback
我使用它与jQueryvalidation引擎。
将FORMCLASSreplace为表单的类。
<!-- IF IE - use Placeholder Fallback --> <!--[if lt IE 10 ]> <script> $(".FORMCLASS").find('[placeholder]').each(function(){ $(this).val($(this).attr('placeholder')); $(this).focus(function() { if ($(this).attr('placeholder')==$(this).val()) { $(this).val(''); } }); }); </script> <![endif]-->
据此,IE 10支持它。 (你可以在这里testing )
我解决了这个问题 – 可能是最简单的方法:
<!--[if lt IE 10]>email:<![endif]--> <input placeholder='email' type='text' name='email'>
自从4.0以后,Firefox也支持它
IE不支持占位符
我觉得这个代码更好,它适用于所有主stream浏览器
<input id="example-email" type="text" value="Email Address" onfocus="if(this.value === 'Email Address') this.value = '';" onblur="if(this.value === '') this.value = 'Email Address';" name="example-email">
问题可能在几年前已经得到解答,但我今天发现它在search。
由于以前没有提供很好的参考和图片,我正在用这两个更新这个问题。
HTML5占位符属性基本上说:
除了Internet Explorer之外,所有主stream浏览器都支持占位符属性。
仅供参考:包括IE9。
如果有人正在寻找一个HTML5占位符一样的解决scheme的不支持的浏览器这里是一个很好的文章:
http://www.viget.com/inspire/a-better-jquery-in-field-label-plugin/
占位符完全支持:
- FF 4+
- Chrome 4+
- Safari 5+
- Opera 11.6+
- IE 10+
来源: 我可以使用input占位符属性?
对于那些想要最简单的解决scheme,使用内置的function!
<input type="text" name="email" value="Email Address" placeholder="Email Address" onfocus="if(this.value==this.placeholder) this.value=''" onblur="if(this.value=='') this.value=this.placeholder">
testing在铬和IE8 🙂
注:我使用这个更多的JavaScript来validationinput,并通过在运行时更改值和占位符在字段本身给予反馈。
我知道这是一个古老的问题。 我的build议是使用Modernizr检测占位符的支持! https://modernizr.com/