必须优先掌握id、class、src、href、alt五个核心属性;id唯一且用于JS查找,class可复用且命名需规范,src和href路径须正确,alt为img强制属性;废弃属性如border等应跳过。

id 和 class 必须优先掌握,其他属性按需叠加——不是所有标签都需要写满属性,写错比不写更危险。
哪些属性必须写,哪些可以先跳过
刚上手时只盯五个核心属性:id、class、src、href、alt。它们覆盖 90% 的日常场景,且错误后果明确可感知。
-
id:一个页面只能出现一次,JavaScript 用document.getElementById()找它,拼错就查不到 -
class:可重复,CSS 和 JS 都靠它批量操作,命名别用中文或空格(my-class✅,我的类❌) -
src和href:路径写错直接 404,优先用相对路径(./images/logo.png),避免硬编码域名 -
alt:不是“可填可不填”,是<img alt="怎样快速学习HTML标签属性 HTML属性使用指南【核心】" >的强制属性;留空(alt="")表示图像纯装饰,有文字信息必须描述清楚
像 border、align、bgcolor 这类已废弃的属性,现在写进去浏览器虽不报错,但会被忽略,还污染代码可读性,直接跳过。
引号、大小写和布尔值怎么写才不翻车
属性值一律用双引号包裹,哪怕看起来“没必要”——比如 type="text" 看似没空格,但统一加引号能防住未来改值时漏加(比如改成 type="email input" 就崩了)。
立即学习“前端免费学习笔记(深入)”;
- 属性名全小写(
data-id✅,DATA-ID❌),HTML 不区分大小写但团队协作中大小写混用极易引发定位困难 - 布尔属性如
disabled、required、checked,存在即生效,写成disabled="disabled"是冗余旧写法,现代写法就是disabled单独出现 -
style属性尽量不用,内联样式难维护、无法复用、权重过高;真要临时调试,也只写一行,别堆多条声明
性能和可访问性容易被忽略的四个关键属性
这些不是“锦上添花”,而是上线前必须检查的硬性项:
-
loading="lazy":仅用于三屏以下图片或 iframe,首屏图片必须去掉或显式写loading="eager",否则 LCP(最大内容绘制)指标会暴跌 -
fetchpriority="high":首页 banner 图、主 CTAs 的<img alt="怎样快速学习HTML标签属性 HTML属性使用指南【核心】" >或<link rel="preload">必须加,否则浏览器默认把它当低优资源排队 -
decoding="async":大图(宽高 > 1000px)加上,避免解码阻塞主线程导致滚动卡顿 -
enterkeyhint="search":搜索框用这个,软键盘回车键显示“搜索”而非“前往”,减少用户误操作
这四个属性加起来不到 10 秒,但漏掉任意一个,都可能让真实用户在低端机或弱网下明显感知卡顿或操作困惑。
data-* 属性怎么用才真正有用
data- 不是“随便塞数据的地方”,它是前端与后端/JS 之间传递轻量上下文的信道,用法有约束:
- 名字要语义化,比如存商品 ID 别写
data-id="123",而写data-product-id="123",避免和其他id混淆 - 值尽量保持字符串类型,别塞 JSON 字符串(
data-config='{"theme":"dark"}'),解析麻烦还易 XSS;复杂结构走 API 或初始化脚本 - JS 读取统一用
element.dataset.productId(驼峰自动转换),别用getAttribute("data-product-id"),后者不处理连字符映射 - 不要用
data-存敏感信息(如 token、用户手机号),它完全暴露在 HTML 源码里
最常被低估的是它的调试价值:把临时状态、来源标记、实验分组 ID 塞进 data-,比 console.log 更直观、可追踪、不影响运行时逻辑。



















