我正在开发一个ExtJS4应用程序 - 自定义报告应用程序。
ExtJS4使用图像和表格(修改后的标记)自动回退所有css3,使用可怕的优雅降级原则。因此,它会使已经臃肿的标记膨胀,并使用默认图像更改所有渐变/边框。
我不确定除了css3元素之外还有什么变化,但这里是应用截图。
这是IE8:
这是Google Chrome:
...
更新2012-11-23
Sencha切片:
ExtJS核心覆盖:
是否有其他方法或设置(javascript或sass)可以更轻松地处理所有这些兼容性问题?
答案 0 :(得分:5)
因此,如果没有答案,我将提供我所采用的实施方案。
如您所见,这个复杂的ExtJS 4.1应用程序具有复杂的设计。 sencha切片工具无论如何都不起作用(但是如果你想保留所有的sencha默认值并且只是改变应用程序的基色,可能是基础SASS变量吗?)。
另一方面,你可以看到Ext覆盖结果的美妙程度。一个相当稳固的过渡,看起来相同95%(或者克里斯科伊尔会说,“好吧,足够好”)。
以下是我的实施:
Ext.application({
...
init: function () {
// Override CSS3BorderRadius value which caused render problems in <IE9 when false.
Ext.supports['CSS3BorderRadius'] = true;
// Hack-ish remove class sniffers from Ext.EventManager (which attaches modrnizer type classes onto the body)
Ext.getBody().removeCls('x-nbr x-nlg');
}
...
});
这种实现方式很优雅:
gg希望这有助于某人