我在我的公司网站上工作,主要是改进CSS。我想消除很多创建圆角、阴影等的小图像。CSS3是一个完美的选择,但我们仍然有很多用户使用IE7和IE8,所以我也需要为他们准备这个网站。
我发现了很多关于CSS3PIE的好意见,我下载了它并尝试使用,但我的IE8不想合作:)。它说:访问被拒绝到: PIE.htc行: 0字符:0代码:0。我试着把文件放到一个文件夹和不同的文件夹,在服务器和本地检查这一点…我总是有相同的信息。
HTML:
<!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>title</title>
<link rel="stylesheet" rev="template" type="text/css" href="styles.css">
</head>
<body id="home" class="cols_One">
<div id="wrapper" class="fauxBlock">
<div id="header">
<div id="cap">
<div id="welcome"></div>
<div id="quicklinks">abc</div>
</div>
</div>
</div>
</body>
</html>CSS:
#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);
}编辑:我添加了代码示例
发布于 2012-11-06 18:44:34
我已经解决了这个问题,将PIE.htc的行尾改为Unix (而不是Windows)。已在Windows7 + IE7和IE8上测试。
希望这对你有帮助!
发布于 2012-09-01 04:53:17
如果css3pie作为本地文件运行,而不是在web服务器上运行,则需要在behavior:属性中提供完整路径,例如:
behavior:url(C:/foo/PIE.htc);发布于 2015-01-12 17:51:10
我尝试将PIE.htc文件放在根文件或(ex: html file)旁边。而在css文件中使用的属性与.yourClass{behavior: url(PIE.htc);}完全相同。将你的htc文件实际关联到html页面,而不是css文件。这对我很管用。:)
https://stackoverflow.com/questions/10737788
复制相似问题