新闻中心

HTML5网页如何制作骨架屏 HTML5网页加载优化的显示效果

2025-10-31
浏览次数:
返回列表
骨架屏通过展示页面结构的灰色占位图提升加载体验,使用HTML+CSS构建占位结构并配合J*aScript在数据加载完成后切换为真实内容,保持布局一致性和动画反馈可优化效果,适用于慢网速或复杂页面场景。

html5网页如何制作骨架屏 html5网页加载优化的显示效果

网页加载时出现白屏会让用户感觉卡顿或页面出错,使用骨架屏(Skeleton Screen)能有效提升用户体验。它通过在内容加载前展示页面结构的灰色占位图,让用户感知到页面正在加载且结构清晰。以下是HTML5中实现骨架屏的基本方法和优化建议。

什么是骨架屏

骨架屏是一种UI设计模式,在数据未完全加载前,先用简单图形和色块模拟页面布局,比如用灰色矩形代表标题、图片、段落等。相比传统的loading图标,它更贴近最终页面形态,减少视觉跳跃感。

使用纯HTML+CSS创建骨架结构

可以通过添加一个“骨架”版本的DOM结构,配合CSS样式来实现。当页面数据未就绪时显示骨架,数据加载完成后替换为真实内容。

示例代码:

HTML结构:

<div class="content">
  <!-- 骨架屏 -->
  <div class="skeleton" id="skeleton">
    <div class="skeleton-header"></div>
    <div class="skeleton-*atar"></div>
    <div class="skeleton-title"></div>
    <div class="skeleton-paragraph"></div>
  </div>
<p><!-- 真实内容(默认隐藏)-->
<div class="actual-content" id="content" style="display:none;">
<h1>文章标题</h1>
@@##@@
<p>这里是正文内容……</p>
                    <div class="aritcle_card">
                        <a class="aritcle_card_img" href="/ai/1070">
                            <img src="https://img.php.cn/upload/ai_manual/000/000/000/175680049013074.png" alt="Mureka">
                        </a>
                        <div class="aritcle_card_info">
                            <a href="/ai/1070">Mureka</a>
                            <p>Mureka是昆仑万维最新推出的一款AI音乐创作工具,输入歌词即可生成完整专属歌曲。</p>
                            <div class="">
                                <img src="/static/images/card_xiazai.png" alt="Mureka">
                                <span>1091</span>
                            </div>
                        </div>
                        <a href="/ai/1070" class="aritcle_card_btn">
                            <span>查看详情</span>
                            <img src="/static/images/cardxiayige-3.png" alt="Mureka">
                        </a>
                    </div>
                
</div>
</div></p>

CSS样式:

.skeleton-header { height: 20px; background: #eee; margin-bottom: 10px; }
.skeleton-*atar { width: 50px; height: 50px; background: #eee; border-radius: 50%; }
.skeleton-title { width: 80%; height: 24px; background: #eee; margin: 10px 0; }
.skeleton-paragraph { width: 100%; height: 16px; background: #eee; margin-bottom: 8px; }
<p>/<em> 添加动画效果,模拟“呼吸”感 </em>/
@keyframes shimmer {
0% { background-position: -200px; }
100% { background-position: 200px; }
}
.skeleton div {
animation: shimmer 1.5s infinite linear;
background-image: linear-gradient(90deg, #f0f0f0, #e0e0e0, #f0f0f0);
background-size: 400px;
}</p>

结合J*aScript控制显示与隐藏

当异步请求完成,将骨架屏隐藏,显示真实内容。

// 模拟数据加载
setTimeout(() => {
  document.getElementById('skeleton').style.display = 'none';
  document.getElementById('content').style.display = 'block';
}, 2000); // 假设加载耗时2秒

实际项目中可结合fetch、axios等请求接口后操作DOM切换。

优化建议

  • 保持骨架结构与真实页面布局一致,避免加载后跳变
  • 使用CSS动画增强“加载中”的视觉反馈
  • 若使用前端框架(如Vue/React),可用专门的骨架组件(如Vue Skeleton Loader)动态控制
  • 服务端渲染(SSR)时可在初始HTML中直接输出骨架结构,加快首屏呈现
  • 注意不要让骨架屏停留过久,应设置超时机制防止假死

基本上就这些。骨架屏虽小,但对用户体验提升明显,尤其在网络较慢或内容复杂的页面中非常实用。实现方式不复杂,关键是结构合理、过渡自然。头像

以上就是HTML5网页如何制作骨架屏 HTML5网页加载优化的显示效果的详细内容,更多请关注其它相关文章!


# css  # vue  # react  # javascript  # java  # html  # html5网页  # 相关文章  # 关键词竞价排名原理  # 可以通过  # 莆田网站建设策划方案  # 浙江外贸关键词优化排名  # seo黑帽最新  # 网站推广计算公式  # 平阴建设一个网站  # 如何推广营销策略案例  # 推广网站一流火4星  # seo接单详解  # 黄石建设信息网站  # 适用于  # 完成后  # 是一种  # 如何下载  # 如何将  # 网上  # 显示效果  # 加载  # io  # axios  # html5  # 前端 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: React/Next.js中实现列表项的动态移动与状态管理:兼论唯一键的重要性  J*a递归快速排序中静态变量导致数据累积的陷阱与解决方案  58动漫网在线官方网 58动漫网正版动漫入口网址  UC浏览器网页版登录入口官网 电脑版网址入口  Python类型检查:优化关联可选属性的Mypy推断策略  中兴Axon42Ultra怎样在文件App筛图_iPhone中兴Axon42Ultra文件App筛图【图片筛选】  CSS布局:解决全屏元素100%尺寸与外边距导致的页面溢出问题  qq邮箱发邮件给国外发不出去_QQ邮箱国际邮件发送失败原因与解决  AO3访问入口汇总 AO3网页版同人作品一键直达  厨房不锈钢水槽发黑生锈怎么处理_水槽用可乐+锡纸2分钟抛亮如新  UC浏览器如何安装插件 UC浏览器添加扩展程序详细教程【进阶】  QQ邮箱官网登录入口 QQ邮箱网页版邮箱快速登录  PowerPoint如何制作滚动字幕结尾彩蛋_PowerPoint路径动画实现平滑滚动字幕效果  在React函数组件中利用原生HTML5进行邮箱地址验证  基于动态规划的房屋花卉种植最小成本算法详解  冬*霸灯泡不亮怎么办_浴霸取暖灯一盏不亮的灯座清洁修复法  vivo云服务网页版登录 怎么登录vivo云服务网页版  如何在CSS中使用浮动制作导航栏_float实现水平菜单  iCloud登录入口网页版 苹果iCloud官网登录  C++如何打印当前代码行号与文件名_C++预定义宏FILE与LINE的使用  新手怎么开始学化妆 零基础化妆入门教程  c++如何使用chrono库处理时间_c++标准库时间与日期操作  马斯克:Optimus 人形机器人复数形式为 Optimi  Lar*el Excel导入时生成自定义递增ID的策略与实践  快手网页版在线登录 快手网页版官网入口快速访问  腾讯QQ邮箱登录入口_QQ邮箱官方网站使用地址  小米Civi 4录制视频过暗_小米Civi 4亮度优化  win11如何加载ICC颜色配置文件 Win11校色文件安装与显示器色彩管理【指南】  《马克思佩恩3》早期版本曝光 UI设计曾多次调整!  KFC游戏互动怎么赢取优惠券_KFC线上游戏活动参与与优惠代码赢取教程  《明末:渊虚之羽》设计师谈设计角色:那会刚毕业 充满激情  抖音网页版平台入口 抖音网页版官网在线访问教程  Spyder启动失败:字体文件权限拒绝错误解决方案  Win11怎么合并任务栏图标 Win11开启任务栏合并减少图标占空间【方法】  QQ邮箱登录平台入口 QQ邮箱网页版邮箱官方入口  outlook中文官网入口地址 outlook官方中文版直达首页链接  漫蛙漫画官方首页 漫蛙2漫画在线阅读入口  顺丰快递查询系统 官方正版查询入口  深入理解Promise链:如何在catch后中断then的执行  b站赚钱渠道_b站收益来源  Golang如何实现Web接口签名验证_Golang Web接口签名校验开发方法  AO3最新官网入口公告_2025AO3镜像站实时查询方法  J*a 递归快速排序中静态变量的状态管理与陷阱  J*a里如何实现线程安全的懒加载单例_懒加载单例实现方法解析  fishbowl官网免费版 fishbowl养鱼网站入口  小米14应用无法联网原因分析_小米14网络权限修复  大象笔记网页版入口 印象笔记网页版登录入口  为什么我的微信朋友圈看不到别人的更新_微信朋友圈更新显示异常解决方法  俄罗斯Yandex搜索引擎入口_Yandex官网免登录一键访问  Descript怎样用AI剪辑自动去噪_Descript用AI剪辑自动去噪【自动降噪】 

搜索