html - CSS 将 html 页面从黑白转换为带有 css 的颜色?

标签 html css css-transitions transition

只是想知道它是否可能,但我正在尝试在加载时制作我的页面,在大约 4 秒的时间内从黑白过渡到彩色 - 整个页面、文本、div、图像,所有内容。

我已经制作了一张黑白图像,可以通过悬停过渡到彩色版本,是否与此类似?但是有了 wrapper ?

img.desaturate { 
   animation: toColour 10s;
}

@keyframes toColour {
    0%    { -webkit-filter: grayscale(100%); filter: grayscale(100%); }
    25%   { -webkit-filter: grayscale(75%); filter: grayscale(75%); }
    50%   { -webkit-filter: grayscale(50%); filter: grayscale(50%); }
    50%   { -webkit-filter: grayscale(25%); filter: grayscale(25%); }
    100%  { -webkit-filter: grayscale(0%); filter: grayscale(0%); }
}

或者让每件东西的颜色单独过渡?

是否有更好的方法或仅使用 css 的可能方法?

提前致谢

最佳答案

我不明白为什么不,只需在包装器中使用动画即可:


jsFiddle


代码片段:

@keyframes toColour {
  0% {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
  }
  25% {
    -webkit-filter: grayscale(75%);
    filter: grayscale(75%);
  }
  50% {
    -webkit-filter: grayscale(50%);
    filter: grayscale(50%);
  }
  50% {
    -webkit-filter: grayscale(25%);
    filter: grayscale(25%);
  }
  100% {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
  }
}
.wrapper {
  background-color: royalblue;
  animation: toColour 4s;
}
p {
  color: cyan;
}
<div class="wrapper">
  <p>
    Example text with color
  </p>
  <img src="http://fillmurray.com/500/500">
</div>

关于html - CSS 将 html 页面从黑白转换为带有 css 的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38807256/

相关文章:

javascript - jQuery 禁用搜索输入不起作用

css - Webkit 浏览器呈现的 CSS 与 Mozilla Firefox 不同......为什么?

html - 如何使用 css 在 HTML <i> 标签上插入背景图片?

javascript - 有没有一种方法可以在不定义任何属性的情况下使用 CSS 过渡?

javascript - 如何使其适用于 html 表中特定类的转换持续时间

Javascript - 需要重复功能

html - 为什么 div 会受到他 child 的影响?

javascript - 如何使用javascript或其他代码将html代码调用到其他页面而不是重新编写长代码?

css - 为什么表情符号在旋转到 45(或 315)度时不会呈现?

css-transitions - webkit 转换似乎在某些框阴影规则中不起作用