2011-02-14 51 views
5

工作,我努力讓網頁具有固定的背景圖像,所以當頁面在一個UIWebView滾動圖像不動。
我發現的是:background-attachment: fixed不適用於iOS4(使用4.2.1)。 要仔細檢查我已準備好<head>部分內的代碼段(如下),並且該頁在Mac和Safari上運行正常,但在iPhone的Safari中未能這樣做...解決方法「背景附件:固定」未在iOS4的

什麼是你建議作爲實現預期結果的解決方法?我已經使UIWebView變得透明並添加了UIImageView,所以我可以通過半透明頁面看到「固定背景圖像」。不幸的是,當我滾動結束/開始邊緣時,我可以看到UIWebView邊框。

是否有任何官方的蘋果資源/網頁指出background-attachment: fixed沒有爲iOS4的實施?

乾杯!

P.S.該代碼段中提到:

<style type="text/css"> 
body { 
    background: #ffffff url('image.jpg') fixed no-repeat; 
    background-attachment: fixed; 
} 
</style> 

回答

1

我不知道是怎麼回事用CSS,還沒有機會來檢查它自己,但我知道,當我試圖擺脫擺脫陰影一個UIWebView我用這一點代碼:

NSArray *sv = [NSArray arrayWithArray:[myWebView subviews]]; 
UIScrollView *webScroller = (UIScrollView *)[sv objectAtIndex:0]; 

NSArray *wsv = [NSArray arrayWithArray:[webScroller subviews]]; 

[[wsv objectAtIndex:6] setHidden:YES]; 
[[wsv objectAtIndex:7] setHidden:YES]; 
[[wsv objectAtIndex:8] setHidden:YES]; 
[[wsv objectAtIndex:9] setHidden:YES]; 

它消除了陰影。我想我從一個SO問題中得到了答案,但是當我找到它時,this是唯一出現的問題。

它通過App Store檢查。

+0

大尖的作品!它的工作,並且是一個合法的解決方案:)在iOS 4.2(iPhone 4)和3.1.3(iPhone 3G)上測試。唯一可能會損壞節目的東西是蘋果改變了視圖層次結構中的某些東西,所以我將代碼稍微改了一下:爲子視圖和if([subView isKindOfClass:[UIImageView class]])`設置爲true,我將'hidden'屬性設置爲true。謝謝安德魯! – matm 2011-03-21 10:22:44

1

使用DIV的背景與負的z-index:

<head> 
<style> 
#background { 
    background: url("background.jpg") no-repeat; 
    position: fixed; 
    top: 0; 
    left: 0; 
    background-size: 320px 480px; 
    width: 320px; 
    height: 480px; 
    z-index: -1; 
} 
</style> 
</head> 

<body> 
<div id="background"></div> 

This body text appears over the fixed background and scrolls. 

</body> 

在iOS 5和iOS 6

+0

當所有iPhone具有相同的寬高比時,這是一個很好的解決方案。但事實不是這樣。所有iOS設備都有很好的解決方案? – chadoh 2015-08-25 13:54:47