我正在阅读HTML5BoilerPlate的CSS样式,我遇到了这个不熟悉的行:
button, input, select, textarea {
font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle;
}
特别是第二个**** vertical-align ***,为什么要打两次并在它前面放一个星号。
如果有人知道该技术的名称或为何使用该技术,那将是一个很好的帮助
谢谢!
-Adrian
答案 0 :(得分:0)
它是一个nasty hack,可用于定位旧版本的IE(其他浏览器忽略无效的星号前缀值)。绝对不是一个好主意,使用IE条件样式表或类似技术要好得多。
答案 1 :(得分:0)
这是Internet Explorer浏览器的CSS黑客攻击:
如果在属性名称前面添加非字母数字字符(如星号(*)),则该属性将应用于IE而不是其他浏览器。与连字符和下划线方法不同,CSS规范不对星号作为前缀进行保留,因此随着CSS规范的发展,使用此黑客可能会导致意外行为。
property:value在IE 7及更低版本中应用属性值。它可能会或可能不会在未来的版本中工作。警告:这使用无效的CSS。
来自here
答案 2 :(得分:0)
IE7 browser
。有关详情,请参阅How to Target IE6, IE7, and IE8 Uniquely with 4 Characters
答案 3 :(得分:0)
这是一个IE6黑客攻击。如果你把*放在CSS属性的前面,它只会被IE6读取。由于IE6的使用量现已降至世界的1%,我们可以忘记这个黑客(除非你住在中国)