【问题标题】:Blurring an image via CSS?通过 CSS 模糊图像?
【发布时间】:2012-11-20 20:04:39
【问题描述】:

在许多智能手机(以三星 Galaxy II 为例)上,当您浏览照片库时,其模糊的副本会显示在背景中。这可以通过 CSS 动态实现吗(即,没有预先准备好的照片副本)?是否有任何复杂的 CSS 图像过滤器来模糊图像?

【问题讨论】:

标签: css image effects


【解决方案1】:

您可以使用CSS3 filters。它们相对容易实现,尽管目前仅在 webkit 上受支持。不过三星 Galaxy 2 的浏览器应该支持,因为我认为那是一个 webkit 浏览器?

【讨论】:

  • 这有效,但不幸的是仅适用于 webkit。目前看来,如果您想在每个浏览器中获得相同的效果,可能唯一的方法是使用 Photoshop 模糊图像并将其作为背景。
【解决方案2】:

使用 CSS3,我们可以轻松调整图像。但请记住,这不会改变图像。它只显示调整后的图像。

查看以下代码了解更多详情。

使图像变灰:

img {
 -webkit-filter: grayscale(100%);
}

要呈现棕褐色外观:

img {
 -webkit-filter: sepia(100%);
}

调节亮度:

img {
 -webkit-filter: brightness(50%);
}

调整对比度:

img {
 -webkit-filter: contrast(200%);
}

模糊图像:

img {
 -webkit-filter: blur(10px);
}

您也应该为不同的浏览器执行此操作。即包含所有的 css 语句

  filter: grayscale(100%);
 -webkit-filter: grayscale(100%);
 -moz-filter: grayscale(100%);

使用多个

 filter: blur(5px) grayscale(1);

Codepen Demo

【讨论】:

  • @Raj 它有效。但这些效果中的每一种都只起作用一次。我的意思是当我应用模糊时,我不能应用亮度,反之亦然。我如何多次使用它们?>
  • 内联就行了,像这样:filter: blur(2px) contrast(10%) so far等等..
  • 演示链接已损坏。
  • IE都不支持这些
【解决方案3】:

此代码适用于所有浏览器的模糊效果。

filter: blur(10px);
-webkit-filter: blur(10px);
-moz-filter: blur(10px);
-o-filter: blur(10px);
-ms-filter: blur(10px);

【讨论】:

    【解决方案4】:

    是的,使用以下代码可以让您对指定的图像应用模糊效果,还可以选择模糊量。

    img {
      -webkit-filter: blur(10px);
        filter: blur(10px);
    }
    

    【讨论】:

      【解决方案5】:

      CSS3 过滤器目前仅适用于 webkit 浏览器(safari 和 chrome)。

      【讨论】:

      • 链接指向其他一些关于使图像灰度化的文章。
      【解决方案6】:
      img {
        filter: blur(var(--blur));
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-16
        • 2018-01-21
        • 1970-01-01
        • 2014-09-01
        • 2015-03-26
        • 2021-12-15
        相关资源
        最近更新 更多