一些朋友在玩窩窩世界的時候,發現官方網站上的進入入口程式是Silverlight,但是有趣的是一個透明背景的Silverlight程式,這個效果最早我也未找資料,在未來Silverlight程式會在各個方面應用, 透明背景的效果就會涉及,這種效果預覽如下:
下面一步一步的告訴大家這個小技巧,首先要準備一個Silverlight,然後將MainPage的填充色設置為透明的,還有LayoutRoot也是一樣,我在這裡用了一張來自網路的圖片:
為了穩定,最好將MainPage的寬高定死,這樣有助於我們在網頁中呈現:
我這張圖是256x256的,大家可以依據自己的需要設置大小,但是一定要符合最終呈現的需求。
現在我們在這個上面,小做幾個故事板動畫,比如滑鼠移入移出,這樣能夠更好的看這個效果,具體實現我們就不做太多的說明,大家可以直接在最後下載源工程流覽。
現在我們要整合到網頁中,同樣,簡單準備了一個帶背景的網頁
現在我們需要添加Silverlight程式到網頁中:
<div>
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="300" height="220 ">
<param name="source" value="/ClientBin/youSilverlight.xap"/>
<param name="windowless" value="true"/>
<param name="background" value="#0F00" />
<param name="minRuntimeVersion" value="4.0.50401.0" />
</object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"> </iframe>
</div>
請source屬性裡寫你的Silverlight程式目標,可能注意background這個屬性,這裡設置了一個#0f00,它是一個顏色表示欄位,為標準的ARGB色值,而我們將A的色值已經設置為0, 有興趣的朋友可以瞭解有關background的屬性部分:HTTP://msdn.microsoft.com/zh-cn/library/cc838148(VS.95).aspx
但是如果你直接運行的話,將會得到一個不是透明背景的效果,這是因為現在的Silverlight程式暫時還不是無視窗的模式,你需要將Windowless設置為true,就如上面的代碼所述。
相關的資料可以查詢HTTP://msdn.microsoft.com/zh-cn/library/cc838156(VS.95).aspx
剩下的工作你需要一個頁面設計師來幫你完成,比如將程式顯示在什麼地方之類的工作,
那麼下面我們預覽一下效果吧。 這是和網頁結合的技巧,可以製作例如登錄、Banner等需要透明背景的特效程式。
本工程的原始程式碼下載如下:點擊直接下載