巧用 HTML 列表:<ul>、<ol>、<dl>的实用指南

news/2024/9/15 0:12:18 标签: html, 前端, javascript
htmledit_views">

目录

无序列表

容器级标签

有序列表

定义列表

一个dt配很多dd   

每一个dl里面只有一个dt和dd

一个dl配多个dt

多级列表


无序列表

        <ul>标签用于定义无序列表。无序列表的特点是各个列表项之间没有特定的顺序,通常以小圆点作为先导符号。所有主流浏览器都支持<ul>标签。

        列表项<li>不能单独存在,必须包裹在<ul>标签内部。也就是说,<ul>的子标签只能是<li>,不能有其他元素。

        浏览器会默认给无序列表添加小圆点的先导符号,但<ul>标签的主要作用并非仅仅是为文字增加小圆点,更重要的是增加无序列表的语义,让页面的结构更加清晰,便于用户和搜索引擎理解。

        <ul>标签在实际应用中有很多场景,比如用作导航条。例如常见的网站导航菜单可以使用无序列表来实现,每个导航项都是一个<li>标签,包裹在<ul>中。例如:

        正确示例:

html"><ul>  
    <li>html课程</li>  
    <li>css课程</li>  
    <li>JavaScript课程</li>  
</ul>  

        错误示例:

html"><li>html课程</li>  

        如果出现如下写法也是错误的,因为<ul>标签内部只能包含<li>标签。例如:

html"><ul>    
    <h1>前端教程</h1>  
    <li>html课程</li>    
    <li>css课程</li>    
    <li>JavaScript课程</li>    
</ul>  

容器级标签

        在 HTML中,<li>标签、<dt>标签以及<dd>标签都属于容器级标签,可以包裹各种文本、链接、图像等元素。

        示例代码如下:

html"><ul>  
    <li>  
        <h4>html入门教程</h4>  
        <p>¥49.00</p>  
        <p>html入门教程简介</p>  
    </li>  
    <li>  
        <h4>css快速掌握教程</h4>  
        <p>¥59.00</p>  
        <p>css快速掌握教程简介</p>  
    </li>  
    <li>  
        <h4>JavaScript从入门到精通教程</h4>  
        <p>¥89.00</p>  
        <p>JavaScript从入门到精通教程简介</p>  
    </li>  
</ul> 

有序列表

        <ol>标签定义有序列表。同样,所有主流浏览器都支持<ol>标签。

        <ol>和<ul>主要的区别在于语义不同,<ol>表示有顺序的列表,而<ul>表示无顺序的列表。在使用方法上,两者较为相似,<ol>里面只能有<li>,<li>必须被<ol>包裹,因为<li>是容器级标签。

        在实际应用中,<ol>的使用相对较少。如果想表达顺序,很多时候人们会选择使用<ul>,并通过自定义的方式来表示顺序,比如百度音乐排行榜、京东轮播图数字 1 - 5 等,可能会使用<ul>配合特定的样式来实现顺序的展示。

        示例代码如下:

html"><ol>  
    <li>html零基础教程</li>  
    <li>css从入门到精通教程</li>  
    <li>JavaScript经典入门教程</li>  
</ol>  

定义列表


        <dl>标签定义了定义列表。在定义列表中,<dt>用于定义列表中的项目,<dd>用于描述列表中的项目。<dt>和<dd>只能在<dl>里面,即<dl>里面只能有<dt>和<dd>,并且<dt>和<dd>都是容器级标签。

        定义列表的用法非常灵活,可以一个<dt>搭配多个<dd>,用于描述一个项目的多个方面;也可以拆开,让每一个<dl>里面只有一个<dt>和<dd>;甚至可以在一个<dl>中出现多个<dt>。示例代码如下:

一个dt配很多dd

html"><dl>  
    <dt>html入门教程</dt>  
    <dd>适合初学者学习</dd>  
    <dd>包含html基本骨架、文本级和容器级标签</dd>  
</dl>  

        

每一个dl里面只有一个dt和dd

html"><dl>  
    <dt>css从入门到精通教程</dt>  
    <dd>主要负责页面的样式</dd>  
</dl>

一个dl配多个dt

html"><dl>  
    <dt>JavaScript教程</dt>  
    <dt>JavaScript作用</dt>  
    <dd>主要负责页面行为</dd>  
</dl>  

        总结:在实际应用中,<dl>标签也有特定的场景,比如京东版权信息上方的 “购物指南、配送方式” 等导航菜单,以及京东导航左侧 “全部商品分类” 每一个菜单右侧的内容等,都可以使用定义列表来实现。

多级列表


        示例代码如下:

html"><body>  
    <h3>前端开发书籍</h3>  
    <ul>  
        <li>  
            html入门教程  
            <ul>  
                <li>h系列标签</li>  
                <li>p标签</li>          
                <li>  
                    a标签  
                    <ul>  
                        <li>页面内的锚点</li>  
                        <li>页面外的锚点</li>  
                    </ul>  
                </li>  
            </ul>  
        </li>  
        <li>  
            css从入门到精通教程  
            <ul>  
                <li>css选择器</li>  
                <li>css清除浮动</li>  
            </ul>  
        </li>  
        <li>  
            JavaScript经典教程  
            <ul>  
                <li>for循环语句</li>  
                <li>if条件语句</li>  
            </ul>  
        </li>  
    </ul>  
</body>  

        运行结果:


http://www.niftyadmin.cn/n/5632075.html

相关文章

部署 Web 项目到 Linux,可以使他人也访问项目的方法

目录 一、环境配置 二、建构项目并打包 三、上传Jar包到服务器, 并运行 3.1 上传Jar包 3.2 运行 jar 包 3.3 开放端口号 四、其他问题 4.1 运行异常问题 4.2 杀掉进程 五、总结 一、环境配置 如果本地项目是SpringBoot项目&#xff0c;使用的数据库是MySQL&#xff…

分类预测|基于黑翅鸢优化BKA-Transformer-LSTM组合模型的数据预测Matlab程序多特征输入多类别输出

分类预测|基于黑翅鸢优化BKA-Transformer-LSTM组合模型的数据预测Matlab程序多特征输入多类别输出 文章目录 一、基本原理BKA-Transformer-LSTM 数据分类预测详细原理和流程详细原理和流程1. 数据预处理2. 模型构建3. 模型训练4. BKA 优化5. 模型测试与验证 结果应用 二、实验结…

Go父类调用子类方法(虚函数调用)

前言 在Go语言中&#xff0c;支持组合而不是继承。网上都说可以通过接口和结构体内嵌来模拟面向对象编程中的子类和父类关系。但给的例子或写法感觉都不是很好&#xff0c;难以达到我的目的&#xff08;比如通过模板模式实现代码的重用等&#xff09;。因此调查了一下实现方式…

Docker安装Neo4j图数据库和APOC插件

文章目录 一、前言二、安装Neo4j三、测试Neo4j四、安装APOC插件五、测试APOC插件 一、前言 官方文档&#xff1a;https://neo4j.com/docs/operations-manual/current/docker/introduction/ 二、安装Neo4j 我这里以 5.23.0 版的 Neo4j 为例 拉取镜像 docker pull neo4j:5.23.0…

稀疏镜像在OpenHarmony上的应用

一、稀疏镜像升级背景 常用系统镜像格式为原始镜像&#xff0c;即RAW格式。镜像体积比较大&#xff0c;在烧录固件或者升级固件时比较耗时&#xff0c;而且在移动设备升级过程时比较耗费流量。为此&#xff0c;将原始镜像用稀疏描述&#xff0c;可以大大地缩减镜像体积&#x…

笔记:应用Visual Studio Profiler分析CPU使用情况

一、目的&#xff1a;应用Visual Studio Profiler分析CPU使用情况 使用 Visual Studio Profiler 分析 CPU 使用情况可以帮助你识别性能瓶颈&#xff0c;优化代码&#xff0c;提高应用程序的响应速度。 二、实现 以下是如何使用 Visual Studio Profiler 分析 CPU 使用情况的详…

移远通信精彩亮相IOTE 2024:探究技术融合,展望智慧未来

8月28-30日&#xff0c;IOTE 2024 第二十二届国际物联网展在深圳正式拉开帷幕&#xff0c;此次活动汇聚全球800家参展企业、10万来自工业、物流、基础建设、智慧城市、智慧零售领域的集成商、终端用户参观展会。 延续着2023年的辉煌成果&#xff0c;在2024 IOTE展上&#xff0c…

设计者模式之访问者模式

1.访问者模式概述 允许你在不改变对象结构中的元素类的前提下&#xff0c;向对象结构中的元素增加新的行为。这种模式将数据结构与作用于结构上的操作分离&#xff0c;从而使得我们可以独立地改变数据结构和操作。 2.访问者模式的组成部分 1&#xff09;Visitor&#xff08;访…