2013-03-04 30 views
2

我有一個頁面,看起來像這樣:事業部被渲染爲空

<html> 
    <body> 
     <div id="outer"> 
      <div id="inner"> 
       <img width="300" height="250" src="someimage.jpg"/> 
      </div> 
     </div> 
    </body> 
</html> 

的CSS樣式是這樣的:

*{ 
    margin:0px; 
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 
    -webkit-user-select: none; 
    -webkit-touch-callout: none; 
} 

body { 
    width:100%; 
    height:100%; 
    background:red; 
    overflow:hidden; 
} 

#outer { 
    position:absolute; 
    top:0px; 
    left:0px; 
    width:100%; 
    height:100%; 
    display:-webkit-box; 
    -webkit-box-orient:horizontal; 
    -webkit-box-pack:center; 
    -webkit-box-align:center; 
    overflow:hidden; 
    border: 1px solid blue; 
} 

我得到了很多奇怪的行爲:

  1. 在WebView的網頁的初始加載中,我看到的只是一條藍線。這就像是inner div中沒有​​圖像。
  2. 在第一次刷新時,WebView將緩慢擴展至100%的高度。它緩緩顯露出someimage.jpg。這就像outer div的動畫,因爲它慢慢意識到它需要佔據整個屏幕。
  3. 在所有後續刷新中,擴展動畫不會發生。一切都很美好。

在網頁的前兩個負載中發生了什麼?

另一個奇怪的是,如果我沒有藍色邊框,#2和#3不會發生。也就是說,我堅持只是一個藍色的線條,這是一個摺疊的div的藍色邊框。我不明白爲什麼我需要邊框才能使inner div的內容顯示出來。

請注意,我對所有負載使用相同的WebView。也就是說,只需撥打WebView#loadUrl即可。

回答

0

我想到它爲什麼「擴大」它的方式:我沒有添加任何佈局參數的WebView!看來,我所有的問題都源於這個小細節。