导航

萌即是正义!时不时分享一些ACG活动记录与有趣代码的小站!

侧边栏
最新评论
广树管理员
2026-08-25 08:21
@RQ_东流水:不知道活动会不会到国庆
广树管理员
2026-08-25 08:20
@Zrzzz:灵感源自AI
RQ_东流水
2026-08-25 00:13
@广树:行,那我国庆看能不能再去一趟日本看看
Zrzzz
2026-08-24 23:07
小羊的椅子坐垫十分可爱 缝之
广树管理员
2026-08-24 18:19
@RQ_东流水:应该是有遗漏
攻略中
空之轨迹 the 1st
暂无评分
Steam空之轨迹 the 1st
2026年8月02日 12时 ~ 攻略中
已累计游玩1个月1天
因父亲卡西乌斯失踪而踏上旅程的艾丝蒂尔与约书亚, 在巡游利贝尔王国的过程中, 经历了无数与未知同伴的相遇与别离, 而在旅途终点等待着两人的,究竟会是什么……?
节奏天国 奇迹之星
暂无评分
NS节奏天国 奇迹之星
2026年7月08日 20时 ~ 攻略中
已累计游玩1个月25天
《节奏天国:奇迹之星》是一款轻松又充满创意的音乐节奏游戏,玩家只需跟随音乐节拍按下按键,就能完成跳跃、敲击空罐、制作料理等各种有趣的小挑战。游戏延续了《节奏天国》系列简单易上手、节奏感强、画风幽默的特点,让玩家在一个个短小精巧的关卡中感受音乐与反应力结合的乐趣,适合喜欢节奏游戏和轻松休闲玩法的玩家体验。
告别回忆 -无垢少女- 致最爱的你
暂无评分
Steam告别回忆 -无垢少女- 致最爱的你
2026年6月24日 20时 ~ 攻略中
已累计游玩2个月9天
系列作发售至今经历了19年,做为其系列最终作的《告别回忆 ~无垢少女~》(以下略称为本篇)在2018年3月发售。本次的FanDisc和至今的系列作相同,带给玩家在各结局后的短篇故事。请充分享受和各个女主角们在欢乐结局后的幸福时光。
亚路塔:狐狸狐途的面包冒险
暂无评分
Steam亚路塔:狐狸狐途的面包冒险
2026年2月12日 19时 ~ 攻略中
已累计游玩6个月21天
一场席卷全世界的面包革命现在开始! 主人公查雅阴错阳差之下,开始了在荒废的岛屿上经营面包店的生活。 出外冒险搜集食材、研发崭新面包配方、遇见性格各异的伙伴们,建造更丰富的设施,用面包香气使无人问津的广场再次热闹起来!
fault - StP - LIGHTKRAVTE
暂无评分
Steamfault - StP - LIGHTKRAVTE
2025年5月29日 20时 ~ 攻略中
已累计游玩1年3个月
全球累计销量超过50万份的“fault”系列最新作!故事的舞台是一个融合了奇幻与科幻的超前世界——卢森海德王国。本作讲述了生活在此地的一个平凡又平庸的究极普通市民——名为果子的少年的故事。
PSN奖杯卡

PSN奖杯卡

归档
赞助商广告

解决并记录因为加载顺序导致flex布局出现画面抖动的笔记

2024-07-15 14:35:19
博客开发

最近在浏览维基萌的时候发现了一个因为加载顺序导致的flex布局抖动现象,想着挺有意思的就记录一下解决思路和方案。


现象

image-9iu2c3ve.png

有时候在浏览维基萌的时候偶尔会一瞬间出现上图的布局。


image-xh7puj05.png

然后一晃而过恢复成了正常布局。

这个现象只有打包发布到服务器上才会出现,本地调试则复现不出来。


分析原因

起初怀疑右侧侧边栏的内容可能引发BUG。于是清空了右侧侧边栏,只保留一个空框架,但问题依旧存在。

后来思考为什么问题只在发布到服务器上时出现,而且复现问题时右侧侧边栏似乎消失了。这联想到可能与网速有关。

于是,在本地调试环境中通过限制浏览器流量成功复现了问题,这样问题就更容易解决了。

经过一番分析,找到了问题的根源。首先,维基萌的PC界面采用三栏布局,通过flex固定左侧菜单和右侧侧边栏的宽度,中间内容部分则分配剩余空间。HTML的加载是自上而下的,当由于网络原因导致页面加载较慢时,有可能在下载到中间内容部分时,右侧侧边栏尚未下载完毕,中间内容部分就先显示出来了。

基于flex布局的设定,由于右侧侧边栏暂时不存在,中间内容部分会占用所有剩余空间。随后,右侧侧边栏加载进来,就会造成界面短暂的抖动。


解决办法

解决办法也很简单,flex布局还有一个order的属性。

CSS中的order属性用于控制灵活盒子布局(flexbox)中的项目顺序。通过设置order属性,可以改变flex容器中的子元素在布局中的排列顺序,而不需要改变HTML的顺序。

首先将原本的HTML顺序从【菜单->内容->侧边栏】改成【菜单->侧边栏->内容】。

然后再通过order属性,指定三个元素的顺序为【菜单->内容->侧边栏】即可。

具体到CSS为:

.blog-layout-body {
  /* 前略 */
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
.blog-layout-left-body {
  /* 前略 */
  order: 0;
}
.blog-layout-content-body {
  /* 前略 */
  order: 1;
}
.blog-layout-right-body {
  /* 前略 */
  order: 2;
}

其中【justify-content: space-between】指定两端对齐,可以防止在【内容】没加载时,【菜单】和【侧边栏】出现布局的抖动。

通过以上修改就可以让对应的元素在加载前和加载后都固定在一个位置,从而防止页面的抖动。

收款.png


file_000000008460720687635c008459256b.png

相似内容:
推文
维基萌博客系统发布了新版本啦!版本号为:v1.0.1 这次主要是增加了 JSON-LD 结构化数据的功能,在这个AI的时代,给搜索引擎更好的待遇。 详见:https://github.com/eeg1412/wikimoeNodeJSBlog/releases/tag/v1.0.1
发表于:2026-02-08 14:41
博文
维基萌博客系统v1可以公开的开发日志
发表于:2025-12-21 10:58
推文
给博客增加了自动打开指定图片到灯箱的功能。 算是一个体验上的小优化,只要在url里加上指定的参数就能实现默认打开指定图片的功能。 这个功能主要是方便分享我的全景照片。 可以尝试点击以下链接进行测试: https://www.wikimoe.com/post/t4d4taba?pswpopen=1&pswphash=1z2zuc0yb2xki&pswpcomponent=htmlcontent&pswpindex=33
发表于:2025-11-08 22:05
推文
支持全景照片功能的0.29.0版本的维基萌博客系统发布啦! 这个版本最大的亮点就是可以在管理后台标记照片为全景照片,并在博客端以全景模式查看照片。 详见:https://github.com/eeg1412/wikimoeNodeJSBlog/releases/tag/v0.29.0
发表于:2025-04-12 11:05
推文
维基萌博客系统发布了0.25.0版本啦! 本次更新主要重构了追番、游戏、书籍的筛选功能,筛选变得更加精细了。并在侧边栏加了当季追番、阅读中、攻略中三个新模块。 以及修复了一些陈年老BUG和前面版本为了优化产生的新BUG😂。 具体更新内容详见:https://github.com/eeg1412/wikimoeNodeJSBlog/releases/tag/v0.25.0
发表于:2025-03-01 11:59
推文
博客系统积攒了一波更新,推了一个新版本,具体更新内容可以在github上查看:https://github.com/eeg1412/wikimoeNodeJSBlog/releases/tag/v0.18.1 话说我最近才知道原来loli.net这个用来镜像的域名已经不大好使了,反而谷歌的fonts.googleapis.com域名好使了?
发表于:2024-06-30 11:27
推文
博客增加了可以在后台自定义添加CSS样式的功能,这样一些小的自定义样式就可以不用编译实现,增加了拓展性。 于是就小改了博客样式,PC版左下角加了会动的砂糖❤,有谜之立体感🕶️。 动图是由AI生成的,感觉挺有意思的,也一起分享了吧。 https://www.leiapix.com/
发表于:2024-04-09 18:19
推文
博客新功能,游戏记录页面公开! https://www.wikimoe.com/page/games
发表于:2024-03-14 18:11