2012-09-07 22 views
0
function doGet() { 
    var app = UiApp.createApplication(); 
    var flex = app.createFlexTable(); 
    for (var i = 1; i<=30; i++) 
    flex.setWidget(i, 0, app.createButton('Button '+i).setId('Button'+i).setVisible(false)); 
    app.getElementById('Button1').setVisible(true); 

    var submit = app.createButton('Submit'); 
    app.add(flex).add(submit); 
    return app; 
} 

生成this Ui從不可見的Ui小部件中刪除空間

我們如何消除第一個可見按鈕和「提交」按鈕之間的空白區域?

回答

2

該空間來自各種HTML元素的瀏覽器特定樣式,例如對每個隱藏行應用2px邊框間距。 (我在Chrome中進行測試;對於其他瀏覽器可能會有所不同)。

我建議使用CSS重置來清除所有瀏覽器特定的樣式。一個簡單的一個類似這樣的修復您的間距問題(再次,在Chrome):

div, table, tbody, tr, td { 
    margin: 0; 
    padding: 0; 
    border-spacing: 0; 
    border-collapse: collapse; 
} 
+0

[這是怎麼了(https://script.google.com/d/1pbETSYR5vryitZrfH87v6bpx1EXuWewO37VXGuR9ZXXxMLbeLqTvKtTN/edit)我將其應用於谷歌的-apps-script Ui。將空白空間縮小一點但不是全部。 –

+0

@BryanP - 看起來你只是將CSS應用於表格。它需要是全球性的。你被'div'造型和'table'造型所拋棄。由於它看起來不像可以添加外部樣式表,您是否可以將相同的樣式添加到「應用程序」以及可伸縮? –

+0

可能需要將其添加到在flex表太每一行和小區('tr'和'td'元素。) –

相關問題