当前位置: 首页 > news >正文

2. nth-child 和 nth-of-type 区别

总结

  • :nth-child(n):选择父元素的第 [n]个子元素,不管该子元素是什么类型(标签名)
  • :nth-of-type(n):选择父元素下第 [n] 个相同类型的子元素,即只考虑指定标签名的元素。

一、:nth-child(n)

定义:

匹配父元素的第 [n](file://d:\Code\Gitee\video-project\admin\package.json) 个子元素,不区分子元素类型

示例:

<ul><li>第一个 li</li><p>这是一个 p</p><li>第二个 li</li><li>第三个 li</li>
</ul>
li:nth-child(1) {color: red;
}
  • 此时 li:nth-child(1) 匹配的是第一个子元素 <li>,生效。
  • 若写成 li:nth-child(2),则不会选中任何元素,因为第二个子元素是 <p>

二、:nth-of-type(n)

定义:

匹配父元素下的第 [n](file://d:\Code\Gitee\video-project\admin\package.json) 个同类型子元素,即只在相同标签名中排序。

示例:

<ul><li>第一个 li</li><p>这是一个 p</p><li>第二个 li</li><li>第三个 li</li>
</ul>
li:nth-of-type(2) {color: blue;
}
  • 此时会选中第二个 <li> 元素,即使它不是父元素的第二个子元素。

三、对比说明

选择器含义是否考虑元素类型示例说明
:nth-child(n)父元素下的第 n 个子元素❌ 不考虑可能不是目标元素
:nth-of-type(n)父元素下第 n 个同类型的子元素✅ 考虑更精确匹配目标元素

四、常见用法示例对比

HTML 结构如下:

<div class="parent"><p>段落 1</p><div>div 1</div><p>段落 2</p><div>div 2</div><p>段落 3</p>
</div>

1. p:nth-child(3)

  • 第 3 个子元素是 <p>,匹配成功。
  • 实际上是第 2 个 <p>

2. p:nth-of-type(2)

  • 找出所有 <p> 中的第 2 个,结果是“段落 2”。

五、总结对比表

对比项:nth-child(n):nth-of-type(n)
是否考虑元素类型
匹配范围所有子元素同类元素中排序
适用场景需要根据位置选择元素,不关心类型需要按类型选择特定顺序的元素
精确性较低较高

http://www.dtcms.com/a/282895.html

相关文章:

  • xss-labs通关
  • k8s之持久化存储流程
  • 小架构step系列16:代码文档
  • 深度点评:2025 年机床钣金加工 TOP10 终极点评
  • 批量文件重命名工具 香菇重命名v0.2
  • Linux运维新手的修炼手扎之第21天
  • 调试bug记录
  • 如何用山海鲸轻松构建3D智慧大屏?
  • 【开源.NET】一个 .NET 开源美观、灵活易用、功能强大的图表库
  • 3DGS之COLMAP
  • 能行为监测算法:低成本下的高效管理
  • LIN通信协议入门
  • AI学习笔记三十一:YOLOv8 C++编译测试(OpenVINO)
  • 构建足球实时比分APP:REST API与WebSocket接入方案详解
  • PandaWiki与GitBook深度对比:AI时代的知识管理工具,选谁好?
  • 自动控制原理知识地图:舵轮、路径与导航图
  • 经典排序算法之归并排序(Merge Sort)
  • Linux内核IPv4路由查找:LPC-Trie算法的深度实践
  • 记录一道sql面试题3
  • 【Docker基础】Dockerfile多阶段构建:Multi-stage Builds详解
  • 【java面试day5】redis缓存-数据过期策略
  • MyBatis 之分页四式传参与聚合、主键操作全解
  • cv610_10B烧录,只能烧录到10%~20%,可能为DDRIO电压没有1.8v
  • Datawhale AI夏令营-基于带货视频评论的用户洞察挑战赛使用bert提升效果
  • socket和websocket的区别
  • 「大模型应用」(2)RAG的检索与rerank
  • vue页面不销毁的情况下再返回,总是执行created,而不触发 activated
  • uniapp 调起支付宝 requestPayment:fail service not found
  • 重学前端006 --- 响应式网页设计 CSS 弹性盒子
  • 2021-10-30 C++区间回文个数