2012年底,移动平台策略师Peter-Paul Koch获得了QuirksMode.org的赞助,他说这将使他能够花更多的时间研究Web标准并研究与webplatform.org共享的兼容性表。
在周末,用于移动表的CSS选择器上线了。 Koch还一直在进一步探索CSS列,并发现实现方面还有一些路要走。
我们与Koch谈了他的工作,他的测试是如何编写的以及为什么开发人员在基于引擎的测试方面应该更加谨慎。
.net:您正在为移动表格投入大量精力。这是其他地方没有做的事情吗?
PPK: 不,这还没有真正完成。最接近我的表是Max Firtman的表,它们集中在HTML5 API上。
我不相信会自动执行浏览器测试或评分,因此我并不真正将HTML5测试之类的测试算在内。然后我们可以使用...,它很有用,但有时无法提供正确的浏览器信息。
据我所知,我仍然是进行最详细测试的人,也是唯一发布测试页和结果的人。
.net:您如何编写测试?
PPK: 慢慢来!有时候,弄清楚规范中的含义并不容易,尤其是当只有两种实现方式(或完全不同)的实现时。幸运的是,我在浏览器测试编写方面有很多经验,因此我知道如何防止常见的陷阱。
例如,起初看起来好像Opera Mini不支持CSS类,但这显然是胡说八道。问题原来是我通过提供一个测试元素来测试对类的支持 字体样式:斜体。许多Opera Mini不支持这种风格。因为我以前曾遇到过这种情况,所以我知道我必须更改测试样式。而且MeeGo浏览器不支持 字体变化:小写。相同的故事。
顺便说一句,JavaScript仍然给 斜体 当您向Opera Mini索要 字体样式 价值。证明您不能自动执行这些测试:您必须查看页面并确定其是否使用斜体。
.net:在您最近关于选择器和列的文章中,您指出使用相同WebKit构建的浏览器具有不同的兼容性。这是否进一步突显了开发人员在采用尖端技术时应如何谨慎对待,并在所有设备上进行更严格的测试?
PPK:是的。手机上没有WebKit。至少有十二种不同的浏览器(不包括使用WebKit作为其渲染引擎的版本),但它们不一定彼此相似。
最好的例子是 -webkit-column-span声明。 事实证明,WebKit最近放弃了对它的支持。这是我所遇到的最奇怪的兼容性问题,因为无法与特定的WebKit版本绑定支持。因此,对该声明的支持是一团糟,而浏览器使用WebKit的事实则一无所获。