【问题标题】:Using filter opacity as a fallback for rgba?使用过滤器不透明度作为 rgba 的后备?
【发布时间】:2014-07-30 18:27:43
【问题描述】:

我想使用 RGBA,这样我就可以在不透明的 div 容器中包含文本,而不会使所述文本透明。我现在有以下内容:

      .container {
         background-color: #5e82a4;
         opacity: 0.9;
         -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
          filter: alpha(opacity=90);
      }

这种方法的缺点是文本在 div 元素内变得透明我宁愿做的是:

     .container {
         background-color: rgba(94,130,164,0.9);
      }

这里唯一的问题是 RGBA 不受 IE8 及以下版本的支持。有没有办法先用RGBA,但是如果浏览器是IE8或更低(不兼容),就用第一种方法?

【问题讨论】:

  • 您可以使用条件 cmets Here 为旧版浏览器包含另一个样式表或类。
  • 也不适用于透明度,但使用 Pie 可以帮助处理旧 IE 版本的圆角和渐变等问题。
  • 我用另一个可能有用的资源更新了我的原始答案。

标签: html css transparency


【解决方案1】:

使用旧版 IE 实现透明背景的唯一方法是使用 2x2 透明 PNG 作为背景图像。

您还可以在 HTML 中使用条件 cmets:

<!--[if lte IE 8]>
    ...
<![endif]-->

最后(我个人不建议这样做),您可以使用 CSS hacks:http://css-tricks.com/snippets/css/browser-specific-hacks/

更新:我还发现了this 资源,它对同一问题进行了很多讨论。

【讨论】:

  • @jessikwa 没问题!如果您对答案感到满意,请不要忘记将其标记为正确。 :)
猜你喜欢
  • 2013-01-21
  • 2016-11-02
  • 1970-01-01
  • 1970-01-01
  • 2015-04-29
  • 1970-01-01
  • 2014-03-29
  • 2023-03-02
  • 2021-06-06
相关资源
最近更新 更多