三股水
Obsidian 笔记属性(Properties)完全教程
本文从 Obsidian 撰写发布

markdown

Obsidian 笔记属性(Properties)完全教程

本文档整理自一次完整的 Obsidian 属性使用问答对话,涵盖从入门到进阶的所有核心知识点。

📖 目录

  1. [什么是笔记属性] (#1-什么是笔记属性)
  2. [属性区的正确写法] (#2-属性区的正确写法)
  3. [属性的类型与格式] (#3-属性的类型与格式)
  4. [属性与正文的区别] (#4-属性与正文的区别)
  5. [扁平结构与嵌套结构] (#5-扁平结构与嵌套结构)
  6. [显示模式设置] (#6-显示模式设置)
  7. [常见问题与排查] (#7-常见问题与排查)
  8. [属性与 Dataview 配合] (#8-属性与-dataview-配合)
  9. [模板中的属性应用] (#9-模板中的属性应用)
  10. [总结] (#10-总结)

1. 什么是笔记属性

属性(Properties) 是 Obsidian 为笔记添加元数据的功能。它写在笔记最开头,用 --- 包裹,采用 YAML 格式。

基本示例

---
title: 如何高效阅读
author: 张三
tags: [个人成长, 阅读方法]
rating: 8.5
is_finished: true
date_finished: 2026-07-15
---

核心价值

属性的核心价值在于它的类型系统。通过为不同属性指定类型,Obsidian 可以识别这些数据,从而实现精准的筛选、查询和展示。


2. 属性区的正确写法

2.1 最基本的规则

属性区必须在笔记的第一行第一列,前面不能有任何空格或空行。

正确写法

---
标题: "我的笔记"
日期: "2026-08-03"
---

错误写法(前面有空行或空格):


---
标题: "我的笔记"
日期: "2026-08-03"
---

或者:

  ---
标题: "我的笔记"
日期: "2026-08-03"
---
⚠️ 关键点--- 必须是笔记的第一行,否则 Obsidian 不会将其识别为属性区,所有内容都会被当作普通文本处理。

2.2 属性区的结构

---
属性名1: 属性值1
属性名2: 属性值2
属性名3: 属性值3
---

# 这里是正文内容

规则

  • --- 必须放在笔记的最开头
  • 属性名和属性值之间用 :(英文冒号)加一个空格分隔
  • 多个属性各占一行
  • 第二个 --- 之后是正文

2.3 属性名和属性值的格式要求

属性名命名规则

  • 推荐使用小写英文字母和连字符 -
  • 避免使用空格和特殊字符
  • 可以使用中文,但建议保持一致性

属性值格式要求

# ✅ 正确:英文冒号 + 一个空格
标题: "我的笔记"

# ❌ 错误:中文冒号
标题:"我的笔记"

# ❌ 错误:冒号后没有空格
标题:"我的笔记"

3. 属性的类型与格式

3.1 支持的属性类型

类型说明示例
文本单行文本标题: "我的笔记"
数字整数或小数评分: 8.5
日期ISO 格式日期日期: 2026-08-03
日期时间ISO 格式日期时间更新于: 2026-08-03T07:17:55
复选框true/false已完成: true
列表多个值标签: [日记, 学习]
标签特殊类型,用于 tagstags: [日记, 笔记]

3.2 属性值的引号使用

当属性值包含空格特殊字符时,建议用引号包裹:

推荐写法

---
标题: "JR-2026-08-03"
日期: "2026 08 03 星期一"
位置: "云南-丽江市"
天气: "小雨 / 小雨"
---

不推荐(虽然有时也能解析):

---
标题: JR-2026-08-03
日期: 2026 08 03 星期一
位置: 云南-丽江市
天气: 小雨 / 小雨
---

3.3 列表(数组)的写法

写法一(行内)

---
tags: [日记, 学习, Obsidian]
分类: [个人, 知识管理]
---

写法二(分行)

---
tags:
  - 日记
  - 学习
  - Obsidian
分类:
  - 个人
  - 知识管理
---
💡 提示:分行写法在实时预览模式下会显示为彩色标签样式,更加美观。

4. 属性与正文的区别

4.1 核心区别

位置用途格式支持
属性区存储结构化数据(给机器读)❌ 不支持 Markdown 格式
正文区展示内容(给人读)✅ 完整支持 Markdown 格式

4.2 属性区不支持 Markdown

--- 包裹的属性区里,所有 Markdown 格式(加粗、斜体、链接、列表标记等)都是无效的,会被当作纯文本显示。

格式在正文中在属性区
**加粗**✅ 显示为加粗❌ 显示为 **加粗** 纯文本
*斜体*✅ 显示为斜体❌ 显示为 *斜体* 纯文本
[[内部链接]]✅ 可点击链接❌ 显示为 [[内部链接]] 纯文本

4.3 推荐做法

  • 属性区:只存数据,不加任何格式
  • 正文区:自由使用 Markdown 格式展示内容
---
属性区:纯数据
标题: "我的读书笔记"
作者: "张三"
评分: 8.5
---

# 正文区:用 Markdown 展示

**书名**:《如何高效阅读》

*作者*:张三

评分:⭐⭐⭐⭐⭐

5. 扁平结构与嵌套结构

5.1 扁平结构(无嵌套)

所有属性都在同一层级:

---
标题: "JR-2026-08-03"
日期: "2026 08 03 星期一"
位置: "云南-丽江市"
天气: "小雨 / 小雨"
温度: "22℃ / 14℃"
---

显示效果:在属性编辑器中显示为可视化表格,带标题和"Add property"按钮。

5.2 嵌套结构(有层级)

属性下包含子属性,子属性必须缩进 2 个空格

---
日记信息:
  标题: "JR-2026-08-03"
  日期: "2026 08 03 星期一"
  位置: "云南-丽江市"
今日天气:
  天气: "小雨 / 小雨"
  温度: "22℃ / 14℃"
---

显示效果:在属性编辑器中显示为可折叠的树形结构,点击顶层属性前的箭头可展开/收起。

5.3 两种结构的对比

特征扁平结构嵌套结构
缩进无缩进子属性缩进 2 个空格
显示方式可视化表格可折叠树形结构
新增按钮✅ 有✅ 有(展开后可见)
适合场景属性少、结构简单属性多、需要分类管理

5.4 嵌套结构缩进规则

✅ 正确:2 个空格

日记信息:
  标题: "JR-2026-08-03"    # ← 2 个空格
  日期: "2026 08 03 星期一" # ← 2 个空格

❌ 错误:4 个空格或 Tab

日记信息:
    标题: "JR-2026-08-03"    # ← 4 个空格,错误
    日期: "2026 08 03 星期一" # ← 4 个空格,错误
⚠️ 重要:Obsidian 属性编辑器只认 2 个空格作为标准缩进。使用 4 个空格或 Tab 会导致嵌套结构无法被识别。

6. 显示模式设置

6.1 设置路径

设置 → 编辑器 → 文档中的属性

有三个选项:

选项效果
可见 (Visible)显示为可视化属性编辑器(表格/树形)
源代码 (Source)显示为原始 YAML 代码
隐藏 (Hidden)不显示属性区

6.2 不同结构对应的显示模式

属性结构可见模式显示源代码模式显示
扁平结构可视化表格(带新增按钮)YAML 代码高亮
嵌套结构可折叠树形结构YAML 代码高亮

6.3 切换显示模式

如果属性区显示为纯代码,可以尝试:

  1. 切换可见/源代码:在设置中切换选项
  2. 切换笔记显示模式:点击笔记右上角 ··· → 切换显示模式(实时预览 ↔ 源码模式)
  3. 关闭再重新打开笔记:强制刷新渲染

7. 常见问题与排查

7.1 属性区全部变红

原因:格式错误,Obsidian 无法解析。

排查清单

检查项解决方法
冒号是否为英文 :将中文冒号 改为英文冒号 :
冒号后是否有空格确保是 属性名: 属性值 格式
第一行是否为 ---删除前面的空行或空格
是否有隐藏字符切换到源码模式,全选删除后重新手动输入

7.2 嵌套结构不显示为折叠

原因:缩进不正确或第一行有空格。

排查清单

检查项解决方法
子属性缩进是否为 2 个空格将 Tab 或 4 个空格改为 2 个空格
--- 是否是第一行删除前面的空行或空格
设置是否为"可见"设置 → 编辑器 → 文档中的属性 → 可见
是否需要刷新关闭笔记重新打开,或切换显示模式

7.3 属性值显示异常

原因:属性值包含空格或特殊字符。

解决方法

# ❌ 可能出问题
日期: 2026 08 03 星期一
天气: 小雨 / 小雨

# ✅ 加引号包裹
日期: "2026 08 03 星期一"
天气: "小雨 / 小雨"

7.4 属性区显示为纯文本(不解析)

原因--- 不在第一行。

解决方法:确保笔记的第一行第一列就是 ---,前面没有空行或空格。


8. 属性与 Dataview 配合

8.1 基本查询

当你积累了足够的笔记后,可以用 Dataview 插件对属性进行查询和汇总。

示例:查询所有天气为"晴"的日记

TABLE 
  位置 as "地点",
  天气 as "天气",
  温度 as "温度"
FROM "日记"
WHERE 天气 = "晴"
SORT file.ctime DESC

8.2 嵌套属性的查询

嵌套属性在 Dataview 中需要用 . 访问:

---
日记信息:
  标题: "JR-2026-08-03"
  位置: "云南-丽江市"
---

查询方式:

TABLE 
  日记信息.位置 as "地点"
FROM "日记"

9. 模板中的属性应用

9.1 基本模板

配合 Templater 插件,可以在新建笔记时自动填充属性:

---
标题: "<% tp.file.title %>"
创建日期: "<% tp.date.now("YYYY-MM-DD") %>"
创建时间: "<% tp.date.now("HH:mm:ss") %>"
---

9.2 带天气的日记模板示例

---
日记信息:
  标题: "<% tp.file.title %>"
  日期: "<% tp.date.now("YYYY-MM-DD dddd") %>"
  时间: "<% tp.date.now("HH:mm:ss") %>"
今日天气:
  位置: "云南-丽江市"
  天气: "小雨 / 小雨"
  温度: "22℃ / 14℃"
---

10. 总结

核心要点

规则说明
--- 必须在第一行前面不能有空行或空格
冒号必须是英文 :不能用中文冒号
冒号后必须有一个空格属性名: 属性值
嵌套缩进为 2 个空格不能用 Tab 或 4 个空格
含空格的属性值加引号标题: "我的笔记"
属性区不支持 Markdown不加粗、不斜体、不加链接

结构选择建议

  • 属性少(≤5 个) → 用扁平结构,显示为可视化表格
  • 属性多需要分类 → 用嵌套结构,显示为可折叠树形

遇到问题时按顺序检查

  1. --- 是否在第一行第一列
  2. 冒号是否为英文 :
  3. 冒号后是否有空格
  4. 嵌套缩进是否为 2 个空格
  5. 含空格的属性值是否加引号
  6. 设置 → 编辑器 → 文档中的属性 → 是否为"可见"
  7. 关闭笔记重新打开
😊
提交

评论区

共 2 条评论

  1. 头像
    水拍石 Lv1
    你研究的真是精细,我一直不会用这个属性功能,看完文章有点懂了。
    8月5日 陕西
    1. 头像
      XIGE 博主
      @水拍石 我也是近期才发现这个的,以前没注意,有些内容同步到网站不合适,设置为属性就不会同步了,还有是做搜索等这里的属性很好用。
      8月5日 云南