2011-01-21 60 views
1

我想用Jquery.corner()來圓角我的div的邊角。IE中的Jquery.corner()透明背景

但是在IE中,角落背景是父級的div顏色(body color:#C70036;)。我使用的是背景圖片,因此您可以在黃色框中看到(here)無法正常工作。

搜索了一段時間後,我發現這一點:

$("myDiv").corner("cc:#fff round 20px"); 

但背景不只是1種顏色,所以我不能使用「CC:#000000」。你知道任何方式讓角落背景變得透明嗎?

回答

4

只要您使用這些jQuery工具來模擬IE中的圓角,就會一直存在這個問題。問題在於,它們通過在角落頂部繪製其他元素來工作,所以背景總是一個問題(還有其他問題也會出現,例如圓角不具有平滑的反鋸齒邊緣等,但背景可能是這個地段最糟糕的問題)。

但有一個解決方案 - 有一個名爲CSS3Pie的IE黑客,它使用了不同的技術,並且生成了沒有這個問題的真正的圓角。

CSS3Pie的另一個好處是它試圖讓IE使用標準的CSS border-radius樣式,這意味着您可以使用適用於所有瀏覽器的現代標準編寫樣式表。

另外,在頁面中不需要任何Javascript/JQuery代碼(CSS3Pie本身是基於Javascript的,但它是從頁面抽象出來的,所以你永遠不需要編寫一行代碼)。而且由於這是一個IE特定的黑客攻擊,它永遠不會被任何其他瀏覽器加載;所有其他瀏覽器將使用CSS標準並免費獲得其圓角;只有IE需要運行額外的代碼來使其工作。

最後,CSS3Pie使IE支持其他幾種現代CSS3樣式,如陰影和漸變,否則將會非常棘手。

+0

Thx這真的有幫助:) – Remo 2011-01-21 11:12:48