html列表标签及css列表属性

HTML 提供了三种主要的列表标签,分别用于不同场景:

  • 无序列表 <ul>:用于展示无顺序关系的项目,通常以符号(如圆点、方块等)标记。
  • 有序列表 <ol>:用于展示有顺序关系的项目,以数字或字母编号。
  • 定义列表 <dl>:用于展示术语及其定义的组合。

一、无序列表 <ul>

无序列表通过 <ul> 标签定义,列表项使用 <li> 标签包裹。默认显示为圆点符号。

html 复制代码
<ul>
  <li>苹果</li>
  <li>香蕉</li>
  <li>橙子</li>
</ul>

常用属性

  • type:可指定符号类型(如 disccirclesquare),但 CSS 更推荐替代此属性。

二、有序列表 <ol>

有序列表通过 <ol> 标签定义,列表项同样使用 <li> 标签。默认显示为数字编号。

html 复制代码
<ol>
  <li>第一步</li>
  <li>第二步</li>
  <li>第三步</li>
</ol>

常用属性

  • type:编号类型(如 1AaIi)。
  • start:起始编号(如 start="3" 从 3 开始)。
  • reversed:倒序编号(如 reversed)。

三、定义列表 <dl>

定义列表用于术语和解释的组合,包含:

  • <dt>:定义术语。
  • <dd>:术语的描述。
html 复制代码
<dl>
  <dt>HTML</dt>
  <dd>超文本标记语言</dd>
  <dt>CSS</dt>
  <dd>层叠样式表</dd>
</dl>

四、嵌套列表

列表可以嵌套使用,例如无序列表内包含有序列表:

html 复制代码
<ul>
  <li>水果
    <ol>
      <li>苹果</li>
      <li>香蕉</li>
    </ol>
  </li>
  <li>蔬菜</li>
</ul>

五、修改列表符号样式

使用 list-style-type 属性可以更改无序列表的符号样式或有序列表的编号类型。例如将无序列表的实心圆点改为空心圆:

css 复制代码
ul {
  list-style-type: circle;
}

支持的值包括:

  • 无序列表:disc(默认实心圆)、circle(空心圆)、square(方块)
  • 有序列表:decimallower-romanupper-alpha

六、完全移除列表符号

通过设置 list-style-type: none 并清除默认的内边距可以完全移除列表符号:

css 复制代码
ul {
  list-style-type: none;
  padding-left: 0;
}

七、使用自定义图片作为列表符号

list-style-image 属性允许使用图片替代默认符号:

css 复制代码
ul {
  list-style-image: url('custom-bullet.png');
}

八、控制列表符号位置

list-style-position 决定符号出现在列表项内部还是外部:

css 复制代码
ul {
  list-style-position: inside; /* 符号与文本对齐 */
}

九、通过伪元素实现高级自定义

通过 ::before 伪元素可以实现更灵活的自定义样式:

css 复制代码
ul.custom-list li::before {
  content: "•";
  color: #ff5733;
  padding-right: 8px;
}

十、多级列表样式嵌套

为不同层级的列表设置不同样式:

css 复制代码
ul li { color: #333; }
ul ul li { color: #666; }
ul ul ul li { color: #999; }

这段 CSS 代码通过嵌套的 ulli 选择器实现了对不同层级列表项的文字颜色控制。以下是具体分析:

选择器层级规则

  • ul li 选择所有直接嵌套在 ul 下的 li 元素,设置为深灰色(#333
  • ul ul li 选择嵌套在两层 ul 下的 li 元素,设置为中灰色(#666
  • ul ul ul li 选择嵌套在三层 ul 下的 li 元素,设置为浅灰色(#999

实际效果示例

html 复制代码
<ul>
  <li>一级列表项(深灰 #333)</li>
  <ul>
    <li>二级列表项(中灰 #666)</li>
    <ul>
      <li>三级列表项(浅灰 #999)</li>
    </ul>
  </ul>
</ul>

注意事项

  • 颜色值使用十六进制简写形式(3位),等同于6位形式的重复简写(如 #333 = #333333
  • 该规则不会影响其他非列表元素或不同嵌套结构的列表
  • 更深的嵌套层级需要追加更多 ul 选择器进行扩展定义
相关推荐
一袋米扛几楼987 分钟前
【Git】规范化协作:详解 GitHub 工作流中的 Issue、Branch 与 Pull Request 最佳实践
前端·git·github·issue
网络点点滴20 分钟前
前端与后端的区别与联系
前端
EnCi Zheng1 小时前
M5-markconv自定义CSS样式指南 [特殊字符]
前端·css·python
kyriewen1 小时前
你的网页慢,用户不说直接走——前端性能监控教你“读心术”
前端·性能优化·监控
广州华水科技1 小时前
北斗GNSS变形监测在大坝安全监测中的应用与优势分析
前端
前端老石人1 小时前
前端开发中的 URL 完全指南
开发语言·前端·javascript·css·html
CAE虚拟与现实1 小时前
五一假期闲来无事,来个前段、后端的说明吧
前端·后端·vtk·three.js·前后端
Sarvartha1 小时前
三目运算符
linux·服务器·前端
晓晨的博客1 小时前
ROS1录制的bag包转换为ROS2格式
前端·chrome
Wect1 小时前
LeetCode 72. 编辑距离:动态规划经典题解
前端·算法·typescript