关于Internet Explorer 8:CSS3PIE访问被拒绝

CSS3PIE Access is denied

我正在公司网站上工作,主要是为了改进CSS。我想消除很多小的图像,这些图像会产生圆角,阴影等。 CSS3是一个完美的选择,但是仍然有很多用户使用IE7和IE8,所以我也需要为他们准备这个网站。

我发现了很多关于CSS3PIE的好的意见,我是否下载了它并尝试使用,但是我的IE8不想合作:)。它说:拒绝访问:PIE.htc行:0字符:0代码:0。我试图将文件放到一个文件夹和不同的文件夹中,在服务器和本地上检查此……我总是有相同的信息。

HTML:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html xmlns:og="http://opengraphprotocol.org/schema/">
<head>
title
<link rel="stylesheet" rev="template" type="text/css" href="styles.css">
</head>

<body id="home" class="cols_One">

       
       
       
        abc
       
         
   
</body>
</html>

CSS:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#cap {
padding: 0 6px;
font-size: 12px;
border-left: 1px solid #EEE;
border-right: 1px solid #EEE;
margin-bottom: 2px;
text-align: right;
line-height: 25px;
background: #fcfcfc; /*non-CSS3 browsers will use this*/
background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4) to(#fcfcfc)); /*old webkit*/
background: -webkit-linear-gradient(left top, left bottom, #f4f4f4, #fcfcfc); /*new webkit*/
background: -moz-linear-gradient(#f4f4f4, #fcfcfc); /*gecko*/
background: -ms-linear-gradient(#f4f4f4, #fcfcfc); /*IE10 preview*/
background: -o-linear-gradient(#f4f4f4, #fcfcfc); /*opera 11.10+*/
background: linear-gradient(#f4f4f4, #fcfcfc); /*future CSS3 browsers*/
-pie-background: ulinear-gradient(#f4f4f4, #fcfcfc); /*PIE*/
-moz-box-shadow: 0 2px 2px #d8d8d8;
-webkit-box-shadow: 0 2px 2px #d8d8d8;
box-shadow: 0 2px 2px #d8d8d8;
behavior:url(PIE.htc);

}

编辑:我添加了代码示例


我已经解决了将PIE.htc的行尾更改为Unix(不是Windows)的问题。
在Windows7 IE7和IE8上进行了测试。

希望这对您有所帮助!


我尝试将PIE.htc文件放在根文件或(ex: html file)旁边。在css文件中,使用了与..x4>完全相同的属性。
实际上将您的htc文件与html页面而不是css文件相关。它为我工作。 :)


如果css3pie作为本地文件而不是在Web服务器上运行,则需要在behavior:属性中提供完整路径,例如:

1
behavior:url(C:/foo/PIE.htc);