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

HTML锚点标签href属性中两个#号和单个#号的作用有什么区别?

两者存在明确差异,符合HTML URL片段标识符的标准规则

1. href="#"的作用

单个#属于空片段标识符:

  • 点击后浏览器默认会滚动到当前页面的顶部
  • 页面URL末尾会追加#,不会触发页面重载
  • 是最常用的无实际跳转逻辑的占位链接写法,通常会配合JS阻止默认行为来绑定点击事件。

2. href="##"的作用

HTML中href属性里的第一个#是片段标识符的分隔符,后面的所有内容都是要匹配的片段值,所以##对应的实际匹配目标是id或name属性为#的元素:

  • 如果页面存在id="#"或者name="#"的元素,点击后浏览器会滚动到该元素的可视区域,URL末尾追加##
  • 如果页面没有对应元素,点击后不会触发页面滚动,仅会在URL末尾追加##,也不会重载页面

注意:绝大多数场景下的href="##"都属于开发者笔误,或者模板渲染时多输出了一个#,极少有业务场景会主动将元素ID设置为#,所以实际使用中两者最直观的差异就是点击后前者会回到顶部,后者无滚动效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 03:12:01