Question

Je voudrais faire un portail et ses ExtJS portlets intègrent dans un schéma de largeur fixe. En ce moment, ils semblent prendre 100% de la largeur, et les éléments semblent avoir des styles inline appliqués pour donner la largeur maximale, et des trucs comme spécifiant un style de « width: 50% » pour les articles du portail ne semblent rien faire.

Comment peut-portlets être dimensionnés et positionnés, et est-il possible d'appliquer des compétences de positionnement habituel CSS? Le code HTML généré tel qu'il apparaît sur l'élément a Inspect un style en ligne spécifiant une largeur en pixels, qui atout volonté tout ce que je mets dans une feuille de style.

Je voudrais avoir un portail être affiché comme un élément de bloc régulier avec le positionnement relatif dans une page. Est-ce possible, et sinon, quelles sont mes prochaines meilleures options?

Était-ce utile?

La solution

Les portlets sont gérées par une mise en page, qui est ce qui distingue les tailles, répond à redimensionne viewport, etc. Vous devez modifier la mise en page existante ou créer votre propre mise en page personnalisée pour le faire (ou bien construire votre propre portail n'est pas basé sur de l'exemple existant).

Autres conseils

il semble avoir la réponse. Ecraser la définition de la fenêtre pour personnaliser le rendu à une balise div. Voici mon code:

Ext.override(Ext.container.Viewport, {
initComponent : function() {
    var me = this,
        html = Ext.fly(document.body.parentNode),
        el;
    me.callParent(arguments);
    html.addCls(Ext.baseCSSPrefix + 'viewport');
    me.el = el = 'dashboard';
    el.setHeight = Ext.emptyFn;
    el.setWidth = Ext.emptyFn;
    el.setSize = Ext.emptyFn;
    me.allowDomMove = false;
    Ext.EventManager.onWindowResize(me.fireResize, me);
    me.renderTo = me.el;
    me.height = Ext.Element.getViewportHeight() - 70;
}});

où me.el est l'identifiant de l'élément de rendu.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top