2011-06-20 19 views
5

我有一個使用CSS3PIE行爲腳本的CSS文件,以便IE8將支持我的文件,但是,我想知道是否有任何方法可以使行爲URL相對於CSS文件而不是相對於HTML文件。有沒有辦法做到這一點?css3pie:CSS行爲屬性是否允許相對URL?

+0

沒有,你也無法鏈接到因此行爲跨域託管要麼沒有谷歌代碼。是的,它有點令人沮喪。 – William

+0

感謝石灰,是的,這是非常令人沮喪的CSS3是非常酷,但很難實施與所有瀏覽器戰鬥,這是我能想到的唯一解決方案。幸運的是,至少現在只有一個HTML文件需要該文件。 –

+0

我不能等到谷歌框架像閃光燈作爲一個插件。 – William

回答

5

你可以使用一個路徑與前斜線(從域的根),與此類似:

behavior: url(/css/PIE.htc); 

應該按預期工作。

或者,你可以使用PIE.js版:的JS版本http://css3pie.com/documentation/pie-js/

優勢 - 通過 相對路徑引用的文件PIE.js簡單..

但,有很多的缺點PIE.js。仔細踩踏。

1

另一種方法是使用服務器端技術爲您查找根。我使用這種技術,因爲我傾向於在虛擬目錄中開發網站,而不是在本地域根目錄中開發網站。

主要的缺點是,這需要在代碼中完成,而不是在一個不同的CSS文件中完成。

.NET例如:

<!--[if lt IE 7]> 
    <style> 
     .foo 
     { 
      behavior: url(<%= ResolveUrl("~/") %>/js/libs/PIE.htc) 
     } 
    </style> 
<![endif]-->