一些按钮后面的奇怪边框 [EXTJS 6.5.2]

Strange border behind some button [EXTJS 6.5.2]

我遇到了一个关于浮动按钮的奇怪问题。事实上,当我创建一个按钮然后使用 setPosition 函数将其重新定位时,会出现下边框。

更多解释:

我有一个为平板电脑设计的界面,上面有很多按钮,有些是静态的,有些是浮动的。

静态按钮的创建方式与视图中的一样:

{
    xtype: 'button',
    scale: 'large',
    height: 60,
    width: 60,
    margin: 10,
    ui: 'lstbuttonclrounded-red',
    cls: 'x-btn-action',
    iconCls: 'x-fa fa-arrow-left'
}

然后他们渲染成这样:

浮动按钮在视图中的创建方式如下:

{
    xtype: 'panel',
    [...]
    listeners: {
        afterrender: { 
            fn: function(){
                var obj = Ext.create({
                    xtype: 'button',
                    width: 60,
                    height: 60,
                    ui: 'lstbuttonclrounded',
                    iconCls: 'x-fa fa-floppy-o',
                    scale: 'large',
                    scope: this.getController(),
                    floating: true,
                    renderTo: this.body
                });

                this.saveBtn = this.add(obj);

                obj.setPosition(0, 0);
            }
        }
    }
}

之后在controller中有这样的定位:

this.saveBtn.setPosition(this.getWidth()-70, this.getHeight() - 105);

它们会这样渲染:

这是出现奇怪边框的地方...

使用的 UI 相同,只是颜色发生了变化。

您遇到过类似的问题吗?如果有,您解决了吗?如何解决的?

非常感谢您阅读我的文章并花时间回答我。

因此 fiddle 和您的应用程序之间存在差异,但我认为这会有所帮助。我假设您面临的问题是由于标准分机主题 CSS。所以默认情况下,您选择的分机会给您的按钮一个阴影 CSS。但是您可以使用相同的名称覆盖它。我已经编辑了您的 fiddle,而不是浮动按钮,我将您的代码与您 post 编辑的 UI 东西放在了这里。所以有两种不同的 hack,因为 fiddle 上的按钮有不同的 css,你的 ui 上的按钮有不同的。必须将第一个面板的背景更改为红色,因为按钮的图标为白色。您在 fiddle 中的按钮正在使用此 css:

.x-btn-default-large

所以在 html 我添加了一个同名的新样式:

.x-btn-default-large {
background-color: red !important;
border-color: transparent !important;
}

对于 UI 按钮,它使用此 css 添加阴影:

.x-css-shadow

所以我将那个调整为:

.x-css-shadow{
box-shadow: none !important;
}

请查看此 fiddle 以获得更好的解释。请务必检查 index.html,这是主要魔法发生的地方。尝试一次从 css 中删除一行,这样您就会知道每一行的作用。我也是初学者。这件事花了一些时间玩控制台。如果你不能让它工作,那么请 post 一个 fiddle 用你的实际代码并评论 link。我会努力的。