【问题标题】:How to create a Facebook post animation using css?如何使用 CSS 创建 Facebook 帖子动画?
【发布时间】:2016-08-05 01:25:12
【问题描述】:

每当我访问 Facebook 时,都会显示此动画

在加载帖子之前。我认为他们在一组 div 上使用 css 来创建假定的帖子行和具有背景的用户图像 渐变

background: -webkit-linear-gradient(left, #ccc, #fff 50%, #ccc);

但是,这些线条的背景渐变会随时间而变化。可以用css创建吗?

【问题讨论】:

  • 我不是要求为我编写这个代码。我只想知道它是怎么做到的?他们用什么?

标签: html css animation


【解决方案1】:

尽管这里的老问题是 an article 告诉怎么做。

主要思想

  1. 从一个主要的白色(或任何其他颜色)容器开始。
  2. 创建一个带有动画渐变背景的子容器。
  3. 主要技巧:创建一堆小的白色(或您之前选择的任何颜色)块将它们放在顶部,以便它们与动画块重叠并创建不同动画部分的错觉。

JSFiddle full example

最难的部分可能是 CSS 动画,所以我把它放在这里:

@keyframes placeHolderShimmer{
    0%{
        background-position: -468px 0
    }
    100%{
        background-position: 468px 0
    }
}

.animated-background {
    animation-duration: 1s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    animation-name: placeHolderShimmer;
    animation-timing-function: linear;
    background: #f6f7f8;
    background: linear-gradient(to right, #eeeeee 8%, #dddddd 18%, #eeeeee 33%);
    background-size: 800px 104px;
    height: 96px;
    position: relative;
}

【讨论】:

  • 始终欢迎提供指向潜在解决方案的链接,但请add context around the link,以便您的其他用户知道它是什么以及为什么存在。始终引用重要链接中最相关的部分,以防目标站点无法访问或永久离线。考虑到仅仅是指向外部站点的链接Why and how are some answers deleted? 的一个可能原因。
  • 好的,我会扩展我的答案
【解决方案2】:

可以使用 CSS3 创建这些类型的动画。 Gif 通常用于加载图像,因为您需要做的就是包含图像,但它们可能非常大,并且可能需要很长时间才能加载到前端。然而,CSS3 的加载速度要快得多,因此您可以将其放在任何地方。

在 CSS3 中,您使用变换和关键帧来制作动画。关键帧定义了对象的变化,例如脉冲图标的大小版本。变换定义了它如何从一个移动到另一个。

更多信息在这里http://www.sitepoint.com/creating-loading-animations-using-only-css3/

【讨论】:

  • 我认为链接很棒,但绝不应该是你的全部答案:meta.stackexchange.com/a/8259/246338
  • 我已经在那里编辑过了。如果这更令人满意,您可以删除否决票吗?请记住,提出问题的人明确表示他们不想看到任何代码
  • “问题明确表示他们不想看到任何代码”那么他们在 SO 上做了什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-18
  • 1970-01-01
  • 2013-08-31
  • 2021-04-15
  • 1970-01-01
相关资源
最近更新 更多