首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CSS图像水下效应

CSS图像水下效应
EN

Stack Overflow用户
提问于 2018-02-28 11:19:11
回答 1查看 1.6K关注 0票数 0

因此,我目前正试图用Css关键帧在一些图像上实现水下效果。我用的是"transform:斜“来做这件事,但是结果不是很好,而且看上去一点也不有机。我希望图像以一种流体的方式移动和扭曲,就像它们在水下一样。

我的Css:

代码语言:javascript
复制
 @keyframes imgevento{
        0%, 100% {
            transform: skew(0deg, 0deg);

        }
        50% { transform: skew(2deg, 2deg);

        }
    }

    .imgevento{
        transform-origin:50% 50%;
        animation:imgevento 6s linear alternate infinite;
}

我是否可以用css达到我想要的结果?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-28 11:56:36

我认为关键之一是将扭曲的元素放入容器元素并隐藏溢出,以创建一个更真实的视野。

除了skew之外,一些额外的过滤器、转换和潜在的CSS梯度可以应用于一些伪元素,从而产生一些“光”效应。

它也很可能会取决于所使用的图像-增强或播放图像的特定元素,如光线等。

这只是一个开始,使用容器来裁剪视图,以及一些saturateinvert过滤器。最好在全屏观看,以获得沉浸式体验。

代码语言:javascript
复制
html,
body {
  padding: 0;
  margin: 0;
  overflow-x: hidden;
  max-width: 570px;
}

.imgevento-container {
  overflow: hidden;
}

.imgevento {
  transform-origin: center center;
  animation: imgevento 6s ease-in-out alternate infinite;
}

@keyframes imgevento {
  0%,
  100% {
    transform: skew(0deg, 0deg) scale(1.35, 1.35);
    filter: saturate(100%) invert(0%);
  }
  
  25% {
    filter: saturate(180%) invert(10%);
  }
  
  50% {
    transform: skew(2deg, 2deg) scale(1.35, 1.35);
    filter: saturate(100%) invert(0%);
  }
  
  75% {
    filter: saturate(150%) invert(20%);
  }
}
代码语言:javascript
复制
<div class="imgevento-container">
  <img class="imgevento" src="https://i.imgur.com/fypMB4q.jpg" />
</div>

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49028340

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档