2010-03-16 90 views
1

Here是我的意思的简单例证。它适用于IE和FF,但不适用于Safari。Safari Extjs网格渲染问题

我有四个动态添加到tabpanel项目的面板。三个是网格面板,一个是表单面板。我需要保留网格的比例或大小。我尝试了几种布局方法(表格,列,绝对等),到目前为止似乎没有任何工作。对于表格布局,所有尺寸最终都是相同的宽度。看来我最好的选择是列布局,并且它们似乎在FF,IE中正确呈现,但在图像中没有显示在Safari中。 (当这个项目不适合当前行时,这个列看起来就是第二行)。最初,标题栏和几个列标题不显示。

有任何建议。

谢谢。

alt text http://pssnet.com/~devone/pssops3/testing/Screenshot.png

回答

1

你最好的选择可能是一个BorderLayout。我不知道你怎么想的页面看,所以我不能告诉一下具体的配置将是最好

编辑:由于您使用的是分机3.1,你真应该看看新HBoxsample)和VBoxsample)布局。他们是非常强大的,并会做你想要的。

Ext.onReady(function() { 
    var panel = new Ext.Panel({ 
     id:'main-panel', 
     baseCls:'x-plain', 
     renderTo: Ext.getBody(), 
     width: 600, 
     height: 400, 
     layout: { 
      type: 'vbox', 
      align:'stretch' 
     }, 
     defaults: { 
      xtype: 'panel', 
      baseCls:'x-plain', 
      flex: 1, 
      layout: { 
       type: 'hbox', 
       align: 'stretch' 
      } 
     }, 
     items: [{ 
      defaults: { 
       xtype: 'panel', 
       frame: true 
      }, 
      items: [{ 
       title: 'Item 1', 
       flex: 1 
      },{ 
       title: 'Item 2', 
       flex: 2 
      }] 
     },{ 
      defaults: { 
       xtype: 'panel', 
       frame: true 
      }, 
      items: [{ 
       title: 'Item 3', 
       html: 'sssssssssssss', 
       flex: 2 
      },{ 
       title: 'Item 4', 
       flex: 1 
      }] 
     }] 
    }); 
}); 
+0

感谢您的输入,但我需要两行两个项目,我不知道如何通过分割区域来做到这一点。 第1和 一个= 150的宽度,高度300 B = 600的宽度,高度300 行2 C = 600的宽度,高度300 d =〜200的宽度,高度300 我试图简单列模型的情况下(HTTP ://pssnet.com/~devone/pssops3/extjstest4.php),并且Safari中的行为肯定是坏的。在IE和FF中工作正常。 – Natkeeran 2010-03-18 20:48:08

+0

非常感谢。我将完整的面板添加到选项卡项目。再次感谢。 – Natkeeran 2010-03-19 16:06:23

+0

真的很难让所有的浏览器(FF,IE,Safari)合作。我浪费了很多时间试图这样做。 – Natkeeran 2010-03-19 16:08:10