0

有什么线索吗?试过pie.htc但它不起作用

.vjs-default-skin .vjs-big-play-button {
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  border-radius: 25px;
  behavior: url(bla bla/PIE.htc);
  position: relative;
}

在此处输入图像描述

4

5 回答 5

0

我认为您的“.htc”文件的链接有问题。我有同样的问题,并通过正确链接到 PIE.htc 解决了它(我使用 PIE.php,因为这对我来说更好 - 这个文件包括 PIE.htc,我对 .htaccess 文件没有问题)。如果您的圆角在 Firefox(例如)中有效,而在 IE8 和更早版本中无效,那么您在 PIE 文件上的链接肯定有问题。您必须从使用圆角的文件(不是从 CSS 文件,而是从例如 home.php)链接到 htc 文件。

但是没有代码,测试页面或类似的东西是测试它并说“你在这里有问题”的问题。

于 2013-02-25T08:26:44.307 回答
0

您看到的是 IE 9、渐变背景和 CSS3 边框的问题。在 3.2.0 版中,在默认样式的第 329 行,您将找到Big Play Button (at start). IE 9 抓住了这个filter声明。

background: #454545;
background: -moz-linear-gradient(top, #454545 0%, #232323 50%, #161616 50%, #3f3f3f 100%);
background: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(0%,#454545), color-stop(50%,#232323), color-stop(50%,#161616), color-stop(100%,#3f3f3f));
background: -webkit-linear-gradient(top, #454545 0%,#232323 50%,#161616 50%,#3f3f3f 100%);
background: -o-linear-gradient(top, #454545 0%,#232323 50%,#161616 50%,#3f3f3f 100%);
background: -ms-linear-gradient(top, #454545 0%,#232323 50%,#161616 50%,#3f3f3f 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#454545', endColorstr='#3f3f3f',GradientType=0 );
background: linear-gradient(top, #454545 0%,#232323 50%,#161616 50%,#3f3f3f 100%);

如果您添加 SVG 图像渐变并使用条件注释来摆脱过滤器,您可以获得圆角边框和渐变背景。Colorzilla 的渐变生成器之类的东西可以提供帮助。

CSS:

background: #454545; /* Old browsers */
/* IE9 SVG, needs conditional override of 'filter' to 'none' */
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzQ1NDU0NSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iIzIzMjMyMyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUxJSIgc3RvcC1jb2xvcj0iIzE2MTYxNiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMzZjNmM2YiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(top,  #454545 0%, #232323 50%, #161616 51%, #3f3f3f 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#454545), color-stop(50%,#232323), color-stop(51%,#161616), color-stop(100%,#3f3f3f)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  #454545 0%,#232323 50%,#161616 51%,#3f3f3f 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  #454545 0%,#232323 50%,#161616 51%,#3f3f3f 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top,  #454545 0%,#232323 50%,#161616 51%,#3f3f3f 100%); /* IE10+ */
background: linear-gradient(to bottom,  #454545 0%,#232323 50%,#161616 51%,#3f3f3f 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#454545', endColorstr='#3f3f3f',GradientType=0 ); /* IE6-8 */

在您的 HTML 中的某处:

<!--[if gte IE 9]>
<style type="text/css">
.vjs-default-skin .vjs-big-play-button {
    filter: none;
}
</style>
<![endif]-->

希望有帮助。

于 2013-03-08T19:56:59.303 回答
0

告诉浏览器它期待 IE9+ 代码可能会有所帮助,如下所示:

<meta http-equiv="X-UA-Compatible" content="IE=9" />

(请参阅IE 中对“border-radius”的支持

于 2013-02-21T15:08:10.817 回答
0

尝试在 css 文件中声明它,

溢出:隐藏

于 2013-03-18T01:56:49.390 回答
0

我在 CSS3Pie 上遇到过不少问题。阅读已知问题页面以获取完整说明,但我通常遇到的问题是相对路径或 htaccess 文件中没有适当的 .htc 内容类型。

于 2013-02-21T23:39:49.953 回答