2012-01-24 48 views
1

嗯,我在asp.net中使用了css3pie,它不工作。我嘗試了所有可能的解決方搜索了很多論壇,但未能在asp.net中正確使用PIE。讓我告訴你我的項目結構。
Asp.net中的css3PIE或PIE.htc

我在我的項目層次結構中有主內頁主內頁。
css3pie正在處理那些不使用母版頁的頁面。 我的CSS和.HTC文件如下

    • CSS
    • 腳本

當我使用css3PIE沒有母版頁的工作原理:

<script type="text/javascript" src="../Scripts/html5.js"></script>   

<link href="css/IE.css" rel="stylesheet" type="text/css" /> 

上面的代碼工作。但是當我和主人一起使用任何頁面時。它不工作。我的css看起來像這樣:

behavior: url('../Scripts/PIE.htc'); 

css放在IE.css文件中。你可以看到上面的代碼。 記住我想盡一切可能的組合在CSS指.HTC

behavior: url('../Scripts/PIE.htc'); 

behavior: url('/Scripts/PIE.htc'); 

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

behavior: url('PIE.htc'); 

with and without quotes 

還有一兩件事。很多人都說這是由於相對路徑。那麼我測試了這些東西。當我看到在IE中的開發工具中呈現的HTML。它適用於行爲但不起作用。 請幫幫我。它將不勝感激。在此先感謝

+0

如果您在瀏覽器中嘗試使用http://的完整網址,您是否收到該文件?還是你得到404或其他HTTP錯誤? – Arief

+0

悲傷感謝您的快速回放。我可以得到的.htc文件 – Ali

+0

那麼當我嘗試像http:// localhost:51281/scripts/PIE.htc完整的url它給我選擇下載Pie.htc文件。這意味着路徑已正確指定。 – Ali

回答

1

好吧我解決了這個問題。所以我寫這裏是爲了幫助其他民族。在asp.net中使用母版頁時,如果在css中使用.htc文件作爲相對路徑,則使用position作爲相對位置。對於使用css3風格的目標元素。例如CSS類是圓盒

<style> 
.round-box 
{ 
    border: 1px solid #696; 
    -webkit-border-radius: 8px; 
    -moz-border-radius: 8px; 
    border-radius: 8px; 
    behavior: url(PIE.htc); 
} 
</style> 

上,我們將申請.round盒風格的HTML元素

<div class="round-box">This is a round Div<div> 

所以那些誰的問題與不工作的IE瀏覽器圓角剛把IE的具體位置:相對IE瀏覽器喜歡。

<!--[if lt IE 9]> 
    <style>   
     .round-box 
     { 
      position: relative; 
     }  
    </style> 
<![endif]--> 

這將修復一輪問題或那些沒有可見邊界的問題。請牢記位置:相對會影響子元素。明智地使用它

1

這不是一個路徑問題......它與Web服務器瞭解如何提供.htc文件有關。有一個包裝腳本包含在PHP中,你可以從這開始並調整它的IIS。