You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将列表标记定位到顶部而非基线?(LI含图片场景)

把列表字母标记移到图片顶部左下角的方法

你可以通过自定义列表标记的方式精准控制位置,默认标记的位置会跟着元素基线走,所以才会跑到图片底部,试试下面两种方案:

方案一:调整默认标记的定位

利用CSS的::marker伪元素调整位置,适合不想改动默认列表结构的情况:

li {
  list-style-type: lower-alpha; /* 保持字母标记类型 */
  position: relative;
  padding-left: 22px; /* 给标记留出足够空间 */
}

li::marker {
  position: absolute;
  top: 0;
  left: 0;
}

注:部分旧版浏览器对::marker的定位支持有限,遇到兼容性问题可以换下面的方案。

方案二:用伪元素自定义标记

完全替换默认标记,定位更灵活:

/* 给父级ul初始化计数器 */
ul {
  list-style: none;
  counter-reset: img-list;
}

li {
  position: relative;
  padding-left: 22px; /* 给自定义标记留位置 */
}

/* 生成字母标记 */
li::before {
  counter-increment: img-list;
  content: counter(img-list, lower-alpha) "."; /* 生成a.、b.这样的格式 */
  position: absolute;
  top: 0;
  left: 0;
}

这样设置后,标记会牢牢固定在li的顶部左侧,刚好对应图片的顶部左下角位置,不管图片高度怎么变都能适配。

内容的提问来源于stack exchange,提问作者Webdev Tory

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 20:25:09