首页 > 编程语言 >短视频app开发源码,骨架屏技术优化前端体验

短视频app开发源码,骨架屏技术优化前端体验

时间:2024-10-26 08:58:06浏览次数:5  
标签:skeleton app 骨架 源码 background 加载

一、什么是骨架屏?

骨架屏是一种在短视频app开发源码页面加载过程中,以占位符形式展示页面结构的技术。它通过显示简单的灰色块和线条,让用户在等待内容加载时获得视觉反馈,提高了用户的满意度。

二、为什么需要骨架屏?

在移动设备和慢速网络环境下,短视频app开发源码的页面加载速度变得尤为关键。用户不愿等待长时间才能看到页面内容。骨架屏能够在内容加载完全之前快速展示页面结构,让用户感受到页面加载的进度,从而提高了用户体验。

三、使用纯 CSS 实现骨架屏

实现骨架屏的方法有很多,可以使用纯CSS,也可以使用SVG,甚至还可以利用一些前端库。下面我们以一个简单的纯CSS实现为例。

1、实现简单的html骨架页面

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Skeleton Example</title>
</head>
<body>
 <div class="skeleton">
  <div class="skeleton-header"></div>
  <div class="skeleton-body">
    <div class="skeleton-line"></div>
    <div class="skeleton-line"></div>
    <div class="skeleton-line"></div>
  </div>
</div>
</body>
</html>

 

2、实现骨架屏样式

/* skeleton.css */
.skeleton {
  width: 300px;
  padding: 20px;
  background-color: #f6f7f8;
}
.skeleton-header {
  width: 100%;
  height: 200px;
  background-color: #e0e0e0;
}
.skeleton-body .skeleton-line {
  width: 100%;
  height: 20px;
  margin-top: 20px;
  background-color: #e0e0e0;
}

 

实现效果如图,骨架屏虽然简单,但要做得好,还可以进一步优化。

在这里插入图片描述

3、骨架屏优化

/* CSS */
@keyframes shimmer {
  0% {
    background-position: -468px 0;
  }
  100% {
    background-position: 468px 0;
  }
}

.skeleton-header, .skeleton-body .skeleton-line {
  animation-duration: 1.25s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-name: shimmer;
  animation-timing-function: linear;
  background: #f6f7f8;
  background: linear-gradient(to right, #eeeeee 8%, #dddddd 18%, #eeeeee 33%);
  background-size: 800px 104px;
  position: relative;
}

 

在这里插入图片描述

以上代码为骨架屏添加了一个流动光影的动画效果,使得骨架屏看起来更有活力。

基于预渲染的骨架屏

基于预渲染的骨架屏技术通过短视频app开发源码服务器端渲染或静态站点生成提前生成页面的骨架,然后在客户端加载时填充内容,从而提高性能和SEO。

使用react-loading-skeleton创建骨架屏

import React from 'react';
import Skeleton from 'react-loading-skeleton';

function UserProfile() {
  return (
    <div>
      <h2>User Profile</h2>
      <div className="user-details">
        <Skeleton height={100} width={100} circle={true} />
        <div className="user-info">
          <Skeleton height={20} width={200} />
          <Skeleton height={20} width={200} />
          <Skeleton height={20} width={200} />
        </div>
      </div>
    </div>
  );
}

export default UserProfile;

骨架屏的最佳实践

保持骨架屏与实际内容的一致性
为了确保用户不会感知到内容的“跳动”,骨架屏的结构和样式应该与短视频app开发源码的最终加载的内容一致。

使用占位符
占位符可以帮助页面保持稳定的布局,防止内容在加载完成前发生大的布局变化。

优化骨架屏的性能
为了提高短视频app开发源码性能,应该减小骨架屏的大小,并确保它们以最快的速度加载。

以上就是短视频app开发源码,骨架屏技术优化前端体验, 更多内容欢迎关注之后的文章

 

标签:skeleton,app,骨架,源码,background,加载
From: https://www.cnblogs.com/yunbaomengnan/p/18503612

相关文章

  • BeanFactory 和 ApplicationContext 的区别
    这是SpringFramework对ApplicationContext的解释:Theorg.springframework.context.ApplicationContextinterfacerepresentstheSpringIoCcontainerandisresponsibleforinstantiating,configuring,andassemblingthebeans.ApplicationContext代表Spring......
  • dremio 25.2 软件包以及github 源码更新了
    昨天我说了dremio发布了25.2提供了新的catalog支持,之后过了一段时间dremio同时也提供了软件包以及github源码的更新说明25.1版本构建关于dremio-js的私服问题在这次代码中也看到解决了,新功能代码可以看看参考资料https://github.com/dremio/dremio-oss/blob/master/ui/......
  • [java毕业设计]免费分享一套SpringBoot+Vue宠物商城网站系统【论文+源码+SQL脚本】,帅
    大家好,我是java1234_小锋老师,看到一个不错的SpringBoot++Vue宠物商城网站系统,分享下哈。项目视频演示【免费】SpringBoot+Vue宠物商城网站系统Java毕业设计_哔哩哔哩_bilibili项目介绍本论文旨在设计与实现一个基于SpringBoot和Vue.js的宠物商城网站系统。随着互联网技......
  • Apple 新品发布会亮点有哪些 | Swift 周报 issue 61
    文章目录前言新闻和社区苹果据称正洽谈投资OpenAI英伟达也有意跟投消息称苹果公司服务部门将裁员约百人,波及AppleBooks/AppleNews等业务苹果拟9月10日举行今年最重磅新品发布会,iPhone16亮相?都有哪些看点?提案正在审查的提案Swift论坛推荐博文话题讨论关......
  • Minecraft 1.21.1游戏服务器运维笔记1:Ubuntu 18.04.6折腾Fabric配置及TinyRemapper、s
    摘要本文叙述了如何在Linux服务器上通过完全命令行交互的方式配置基于Minecraft1.21.1版本的Fabric服务器,交代了环境配置流程,以及服务端文件、模组文件的下载方法,给出了命令行操作方式以及完整的游戏启动脚本。目录摘要背景需求前瞻知识及材料准备准备工作环境配置操作系......
  • 基于SpringBoot+Vue的药店管理系统设计与实现毕设(文档+源码)
            目录一、项目介绍二、开发环境三、功能介绍四、核心代码五、效果图六、源码获取:        大家好呀,我是一个混迹在java圈的码农。今天要和大家分享的是一款基于SpringBoot+Vue的药店管理系统,项目源码请点击文章末尾联系我哦~目前有各类成品毕......
  • 基于SpringBoot+Vue的校园二手书交易平台管理系统设计与实现毕设(文档+源码)
           目录一、项目介绍二、开发环境三、功能介绍四、核心代码五、效果图六、源码获取:        大家好呀,我是一个混迹在java圈的码农。今天要和大家分享的是一款基于SpringBoot+Vue的校园二手书交易平台管理系统,项目源码请点击文章末尾联系我哦~目前有......
  • 提现生成器【APP】自定义生成小游戏提现截图
    今天发个避坑帖!首先看看下面这种收益图,你们肯定见过不少!‘割割’们让你上车,必须得有一些吸引你的东东啊,不然怎么割你吗?其实这种截图都是软件生成的,我网站上分享过非常多的类似软件,什么聊天记录生成的啊,什么ZFB,微信零钱转账记录,余额多少啊。。。。。都可以生成。像这种......
  • 提现生成器【APP】自定义生成小游戏提现截图
    今天发个避坑帖!首先看看下面这种收益图,你们肯定见过不少!‘割割’们让你上车,必须得有一些吸引你的东东啊,不然怎么割你吗?其实这种截图都是软件生成的,我网站上分享过非常多的类似软件,什么聊天记录生成的啊,什么ZFB,微信零钱转账记录,余额多少啊。。。。。都可以生成。像这种......
  • 提现生成器【APP】自定义生成小游戏提现截图
    今天发个避坑帖!首先看看下面这种收益图,你们肯定见过不少!‘割割’们让你上车,必须得有一些吸引你的东东啊,不然怎么割你吗?其实这种截图都是软件生成的,我网站上分享过非常多的类似软件,什么聊天记录生成的啊,什么ZFB,微信零钱转账记录,余额多少啊。。。。。都可以生成。像这种......