6

我将 Ext JS 网格面板放在 iFrame 中。有谁知道我怎样才能把它放在 iFrame 的中心。

目前它看起来像这样 - 目前它看起来像这样

我希望它是这样的—— 我希望它是这样的

4

5 回答 5

5

您的 IFrame 的内容可以使用如上的边框布局或不使用布局,如下所示:

var viewPort = new Ext.Viewport({
    renderTo:'body',
    width: 400,
    height: 400,
    items:[new Ext.Panel({
        title: 'hi',
        width: 200,
        height: 200,
        style: 'margin:0 auto;margin-top:100px;'
    })]

});

于 2011-07-04T12:10:21.250 回答
3

示例站点中,有一个您可能想查看的示例。

layout:'ux.center',
items: {
    title: 'Centered Panel',
    widthRatio: 0.75,
    html: 'Some content'
}
于 2011-07-04T12:15:06.100 回答
1

另一种不那么优雅的方式是 VBox 和 HBox 布局的组合,但它是纯 ExtJS 并且不依赖于 UX:

Ext.create('Ext.container.Viewport',{
    style: 'background-color: white;',

    layout: {
        type: 'vbox',
        align : 'stretch',
        pack  : 'start',
    },
    items: [{
        flex: 1,
        border: false
    },{
        height: 200,
        border: false,
        layout: {
            type: 'hbox',
            pack: 'start',
            align: 'stretch'
        },
        items: [{
            flex: 1,
            border: false
        },{
            html:'Centered Panel',
            width: 400
        },{
            flex: 1,
            border: false
        }]
    },{
        flex: 1,
        border: false
    }]

    //items: [login_panel],

});
于 2012-09-03T12:26:36.663 回答
1

只需使用:

this.center()

其中“this”是您要放在中心的对象(比如说网格)。

于 2013-12-31T14:00:55.360 回答
0

就像是

grid:
  region: center;

panel:
  layout: border;
  css: "padding: 40px"
于 2011-07-04T11:47:01.143 回答