0

0

HTML嵌套列表中序号不递增的解决方案:修复非法嵌套与重置计数逻辑

花韻仙語

花韻仙語

发布时间:2026-01-11 18:11:45

|

168人浏览过

|

来源于php中文网

原创

HTML嵌套列表中序号不递增的解决方案:修复非法嵌套与重置计数逻辑

html中`

    `序号只显示“1”是因为将`
      `直接置于`
    `内部(而非`
  • `内),违反了html语义结构,导致浏览器重置计数器;正确做法是将所有嵌套有序列表(`
      `)严格包裹在父级`
    1. `标签中,并确保层级关系合法。

      在HTML中,列表的嵌套必须遵循严格的语义规则:<ol> 和 <ul> 只能作为 <li> 的子元素出现,而不能直接作为另一个列表(如 <ul> 或 <ol>)的子元素。你原始代码中多次将 <ol class="f"> 直接写在 <ul class="a"> 内部(例如 <ul><li>…</li><ol>…</ol></ul>),这属于无效HTML结构。现代浏览器会自动纠错——通常将孤立的 <ol> 提升为 <ul> 的兄弟节点,或强制重置其计数器,结果就是所有顶层 <ol> 都从 1 开始、无法延续编号。

      ✅ 正确嵌套结构应为:

      <ul class="a">
        <li>General Aviation (piston-driven engines)
          <ol class="f"> <!-- ✅ 此ol是li的子元素 -->
            <li>Single-Engine Aircraft</li>
            <li>Dual-Engine Aircraft</li> <!-- ✅ 同一ol内连续项,自动编号为1、2 -->
          </ol>
        </li> <!-- ⚠️ 注意:li必须闭合,且ol必须在其内部 -->
      </ul>

      以下是修复后的完整、语义合规的代码示例(已精简冗余标签,移除过时的 <font>,推荐使用CSS控制样式):

      <!DOCTYPE html>
      <html lang="zh-CN">
      <head>
        <meta charset="UTF-8">
        <title>Aircraft Types</title>
        <style>
          div {
            background-color: white;
            width: 300px;
            border: 2px solid red;
            padding: 20px;
            margin: 10px;
            font-family: Arial, sans-serif;
            color: lightblue;
            font-size: 1.5em;
          }
          ul.a { list-style-type: disc; }
          ol.f { list-style-type: decimal; }
          ol.u { list-style-type: upper-roman; }
          ol.t { list-style-type: upper-latin; }
          ol.p { list-style-type: lower-latin; }
          ol.q { list-style-type: lower-roman; }
        </style>
      </head>
      <body>
        <div>
          <h2>Aircraft Types</h2>
          <ul class="a">
            <li>General Aviation (piston-driven engines)
              <ol class="f">
                <li>Single-Engine Aircraft
                  <ol class="u">
                    <li>Tail wheel</li>
                    <li>Tricycle</li>
                  </ol>
                </li>
                <li>Dual-Engine Aircraft
                  <ol class="t">
                    <li>Wing-mounted engines</li>
                    <li>Push-pull fuselage-mounted engines</li>
                  </ol>
                </li>
              </ol>
            </li>
          </ul>
          <ul class="a">
            <li>Commercial Aviation (jet engines)
              <ol class="f">
                <li>Dual Engine
                  <ol class="p">
                    <li>Wing-mounted engines</li>
                    <li>Fuselage-mounted engines</li>
                  </ol>
                </li>
                <li>Tri-Engine
                  <ol class="q">
                    <li>Third engine in vertical stabilizer</li>
                    <li>Third engine in fuselage</li>
                  </ol>
                </li>
              </ol>
            </li>
          </ul>
        </div>
      </body>
      </html>

      ? 关键修复点总结:

      触站AI
      触站AI

      专业的中文版AI绘画生成平台

      下载

      立即学习前端免费学习笔记(深入)”;

      • 所有 <ol> 必须嵌套在 <li> 内部(不可悬空于 <ul> 下);
      • 每个 <li> 应显式闭合,确保DOM树层级清晰;
      • 移除了已废弃的 <font> 标签,改用CSS控制字体、颜色与大小,提升可维护性;
      • 使用语义化 <h2> 替代 <font> 作为标题,符合无障碍与SEO最佳实践;
      • 嵌套层级清晰:<ul> → <li> → <ol> → <li> → <ol>,浏览器据此自动维护编号序列(如 1. → 2. → i. → ii. → A. 等)。

      ? 额外提示: 若需跨多个父 <li> 共享同一编号序列(如让第二个 <li> 中的 <ol> 接续第一个 <li> 中 <ol> 的末尾数字),需使用 CSS counter-reset / counter-increment 手动控制,但常规文档结构中,严格遵守“ol 必须在 li 内”的规范即可保证自然递增

相关文章

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

871

2024.01.03

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

32

2025.12.06

DOM是什么意思
DOM是什么意思

dom的英文全称是documentobjectmodel,表示文件对象模型,是w3c组织推荐的处理可扩展置标语言的标准编程接口;dom是html文档的内存中对象表示,它提供了使用javascript与网页交互的方式。想了解更多的相关内容,可以阅读本专题下面的文章。

4340

2024.08.14

DOM是什么意思
DOM是什么意思

dom的英文全称是documentobjectmodel,表示文件对象模型,是w3c组织推荐的处理可扩展置标语言的标准编程接口;dom是html文档的内存中对象表示,它提供了使用javascript与网页交互的方式。想了解更多的相关内容,可以阅读本专题下面的文章。

4340

2024.08.14

li是什么元素
li是什么元素

li是HTML标记语言中的一个元素,用于创建列表。li代表列表项,它是ul或ol的子元素,li标签的作用是定义列表中的每个项目。本专题为大家li元素相关的各种文章、以及下载和课程。

436

2023.08.03

seo页面描述
seo页面描述

一个好的SEO页面描述应该包含关键词、简明扼要地概括网页的主题和内容、具有吸引力、与网页内容相符,并且是独特的。它不仅可以帮助搜索引擎了解网页的内容,还可以吸引用户点击进入网页。因此,编写一个优秀的SEO页面描述对于网页的排名和点击率都非常重要。

219

2023.08.31

wordpress seo
wordpress seo

WordPress网站SEO优化方法有:1、选择一个SEO友好的主题,具有清晰的代码结构,快速的加载速度和响应式设计;2、使用SEO插件,优化你的标题标签,元描述,关键字,XML站点地图等;3、优化你的内容,内容是SEO优化的核心;4、优化你的网站速度;5、创建友好的URL;6、使用内部链接;7、优化图像;8、使用社交媒体;9、定期更新你的网站;10、监控和分析你的网站等等。

435

2023.09.18

SEO诊断方法有哪些
SEO诊断方法有哪些

SEO诊断是一个综合性的工作,需要从网站结构、关键词优化、内容质量、外部链接、网站速度、移动友好性等多个方面进行评估和优化。通过进行SEO诊断,可以帮助网站提高在搜索引擎中的排名,从而增加流量和曝光度 。

298

2023.10.09

Python异步编程与Asyncio高并发应用实践
Python异步编程与Asyncio高并发应用实践

本专题围绕 Python 异步编程模型展开,深入讲解 Asyncio 框架的核心原理与应用实践。内容包括事件循环机制、协程任务调度、异步 IO 处理以及并发任务管理策略。通过构建高并发网络请求与异步数据处理案例,帮助开发者掌握 Python 在高并发场景中的高效开发方法,并提升系统资源利用率与整体运行性能。

37

2026.03.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 0.9万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.6万人学习

CSS教程
CSS教程

共754课时 | 42.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号