选项
- 使用 jQuery 1.7.2。
- 向 jQuery 团队提出问题并希望得到修复(或自己提供)。
- 使用 Firebug 而不是 WebDeveloper(这可能有帮助,也可能没有帮助)。
- 忽略它。
只要页面正确呈现,我相信这是一个您可以放心忽略的警告,即使您正在构建一个严格要求验证 CSS 的网站。
一旦 Firefox 完全支持box-sizing
(不需要-moz-
前缀),警告就会消失,但直到 Firefox 21 之后的某个版本才会发生。
背景资料
警告来自某些 CSS 样式所需的不同语法。要支持所有浏览器,您通常必须指定所有各种语法。浏览器将忽略他们不认识的那些。
在 的情况下box-sizing
,Firefox 需要-moz-
前缀,早期版本的 Safari Mobile 和 Android 浏览器需要-webkit-
前缀,而其他浏览器则根本不需要前缀:
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
box-sizing: content-box;
添加线性渐变时会出现类似的问题,在这种情况下是由值而不是属性名称引起的:
background-image: -webkit-linear-gradient(top, #444, #999);
background-image: -moz-linear-gradient(top, #444, #999);
background-image: -ms-linear-gradient(top, #444, #999);
background-image: -o-linear-gradient(top, #444, #999);
background-image: linear-gradient(top, #444, #999);
当警告来自使用的不同语法时,通常是验证器或错误控制台不够聪明,无法从通常不可避免的无害问题中识别出真正的问题。公平地说,它实际上被识别为警告,而不是错误。
附加信息
较新版本的 jQuery 将box-sizing
样式用于内部目的。jQuery 1.8.0 只产生一个box-sizing
警告,而 jQuery 1.7.2 不产生任何警告。
jQuery 可能以稍微粗心的方式使用它——没有首先测试是否有某种类型的支持——但没有造成任何实际伤害。如果是这样,如果有足够多的人向 jQuery 团队抱怨它,那么 jQuery 代码可能会被重构以解决这个问题(以 jQuery 运行速度稍慢一点为代价)。
如果警告是 about-moz-box-sizing
而不是box-sizing
,那更可能表明 Firefox 可能存在错误,而不是 jQuery 的小问题。