0

有一天,当我检查我在 sencha touch 2.2 中完成的应用程序时,它的布局完全被破坏了。我意识到我的 Chrome 已经从 28 自动更新到 29。它在 chrome 28 及更早版本,任何其他 webkit 浏览器中都能完美运行。当我检查示例应用程序来自 sencha touch 包,它似乎也坏了。我的客户也使用 chrome 29。如何解决 chrome 29 的这个布局问题?

4

3 回答 3

4

我有同样的问题,我修复了。

touch/resources/themes/stylesheets/sencha-touch/base/mixins/_Class.scss在您的应用中

用以下内容替换mixin st-box并使用 compass 重新编译您的 css:

@mixin st-box($important: no) {
    @if $important == important {
        display: flex !important;
        display: -webkit-box !important;
        display: -ms-flexbox !important;
    } @else {
        display: flex;
        display: -webkit-box;
        display: -ms-flexbox;
    }
}
于 2013-09-05T05:18:55.707 回答
1

我也遇到了问题,我成功更新到 sencha 2.2.1。您可以使用 sencha cmd 使用命令 sencha upgrade 轻松升级您的项目。http://docs-origin.sencha.com/touch/2.2.1/#!/guide/command

于 2013-09-05T04:40:08.880 回答
0

在你的 touch framework 文件夹中打开以下 Sass mixin:resources/themes/stylesheets/sencha-touch/base/mixins/_Class.scss

搜索 st-box mixin,并将代码替换为://fix for chrome 29 bug。- 它只是切换显示规则的顺序//

@mixin st-box($important: no) {
    @if $important == important {
        display: flex !important;
        display: -webkit-box !important;
        display: -ms-flexbox !important;
    } @else {
        display: flex;
        display: -webkit-box;
        display: -ms-flexbox;
    }
}

接下来要做的就是编译 Sass 样式表。你需要在你的机器上安装 Sass & Compass(和 Ruby)。在命令行上,浏览到文件夹: touch/resources/sass 并运行以下行:compass watch

这应该可以解决最新 Chrome 浏览器的 Sencha Touch 问题!(如果您没有安装 Sass/Compass 并且只想要生成的 app.css,请随时从此处下载 。http://www.ladysign-apps.com/developer/wp-content/uploads/ 2013/08/app.css

于 2014-12-19T10:11:59.793 回答