安卓小屏上翻到第五层回复,左边缩进累加到 160 像素,正文一列只剩几十像素宽,一个字一行,页面高度翻了三倍。第一次遇到会往复杂处想,其实漏掉的多是个小前提。
.comment-list .children { margin-left: 8px; }
@media (max-width: 480px) {
.comment-list .children { margin-left: 0; border-left: 2px solid #ddd; padding-left: 8px; }
}
缩进量按层数线性累加,主题没设上限,深层回复就一路往右推。媒体查询里也没针对窄屏压缩缩进,桌面看着还行,手机直接崩掉。这一点先确认清楚,后面就不用反复试。
「评论缩进溢出」这类改动最怕改一半,回滚脚本先准备好,再动生产。临时改动用注释写上日期和原因,过两周自己都记不清为什么这么写。
动手前把原文件复制一份带时间戳,出问题立刻换回去,比现场分析快得多。
具体做法是,给缩进设一个最大层数,超过之后不再往右推,改用左侧竖线区分层级;窄屏把每层缩进降到八像素,用竖线颜色替代空白;过深的回复折叠起来,默认只显示前两层,点开再看。
改完照着核一遍,三百二十像素宽的屏幕上第五层回复正文仍占满一行,不再出现单字换行。
