番外:Markdown 的完整图片语法

本贴最后更新于 1260 天前,其中的信息可能已经时移俗易

Hexo 博客总算改了图片注释的 js,现在复制思源笔记的内容到 Hexo,原来在本地笔记显示的图片标题,也可以正确在博客中显示了,舒服了。

image.png

image.png

话说回来,有接触 Markdown 的人,肯定知道 Markdown 怎么插入图片,但是你八成记的是错误且不完整的语法。

如果去网上搜 Markdown 的教程,大部分人都会告诉你 Markdown 插入图片的语法是 ![alt 属性文本](图片地址),你也就一直相信这种说法。如果你有使用 Typora、VSCode 当 Markdown 编辑器,用不了多久就会发现,这个图片语法中方括号内的文字除了在源码模式告诉你这个图片是什么内容外,在渲染的时候就完完全全隐藏了。而你真正想要的,可能是这个图片注释渲染的时候也能在图片正下方。如果你去网上搜 Markdown 如何在图片下居中显示文字,你可能会使用 <center>text</center> 的语法来达成目的,然后在心里暗骂,为什么 Markdown 就不能简单点的加图片的说明!

其实 Markdown 图片语法里的 alt 属性文本,真的就只是用于源码模式还有图片未成功加载时告诉你这个图片的是干什么用的本来就不是用于渲染的。如果你有接触 HTML (或者你没接触也不要紧,你只要知道 Markdown 就是 HTML 的简化版,Markdown 是通过渲染为 HTML 来展示样式的),这个 alt 属性文本就和 <img> 标签的 alt 属性作用一模一样。而 <img> 标签其实还有一个属性——title。这个 title 才是图片的标题,能正常显示在渲染结果中的,但默认是你鼠标悬浮于图片时才显示这段文字。

那 Markdown 有没有 title 属性呢?有的,比如菜鸟教程的 Markdown 教程里就明确告诉你 Markdown 的 title 语法就是放在圆括号里面,用英文引号包裹。

不信?在 Typora 粘贴一张图片,并加上 title 试试

image.png

在 Github 也试试

image.png

其实我上面几张图片也加了 title,在链滴也是鼠标悬浮显示图片标题的

总结

Markdown 的完整图片语法是 ![anchor text](img_src "title")

  • anchor text 用于源码模式和图片未成功加载提示图片用途
  • img_src 是图片地址,可以是本地的也可以是网络图床
  • title 是图片标题,默认是鼠标悬浮显示

如果你问为什么这俩就不能合并,非要分开,那就不关我事了,问这语法的发明人吧

说到这里就得表扬下思源笔记了,图片注释非常方便,右击图片就可以直接输入图片标题,默认居中显示

image.png

而语法就是用的 title,导出 md 也能完整保留语法,这样我粘贴到 Hexo 博客去,就能完整保留样式,不需要动了。

比较下其他软件:

  • Typora 前面已经展示过了只能鼠标悬浮展示图片标题,加图片说明需要 HTML 语法
  • wolai 虽然支持图片说明,但图片说明是默认居左的,这点和 notion 一样……(这点也要抄?)貌似不支持导出
  • Ob 没深入使用过,只知道默认不安装插件下是没法加图片说明的

更不用提思源的本地图床和网络图床共存的图床解决方案。思源未必是最佳笔记软件最佳写作软件,但无疑是我心目的最佳文章发布软件~

可以看看我的博客效果:纠误:Markdown 的完整图片语法 | Achuan-2

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    24769 引用 • 101852 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • clark-cui 1 赞同 4 评论

    关于导出这里,我其实有一点别的想法。因为笔记本身并不是完全意义上的 md,是有一些增强语法在里面的,比如双链,导出的时候,还是想带上一些知识的链接关系,比如图谱。如果只是单纯意义的导出 md 的话,要不就记录的时候不写增强语法,要不就导出的时候用脚本过滤下,这样都舍弃了许多。
    而且维护笔记和博客两套,属实有点费力....一开始折腾的挺爽,越到后面越麻烦。我两年前弄的 hexo 博客,弄了许多个性化的定制,推到了我的服务器里,当时为了导出方便还做了个镜像包存在阿里云。后面换了电脑,服务器也过期了,迁移的时候特别痛苦,所以就干脆不迁移了,把内容拿下来,从新弄了个 vuepress 的博客,到现在,感觉快要舍弃他了,本地编译很慢,又试了 vitepress,直到最近不弄了,因为我的备案问题,老是被公安局打电话...烦死了,现在不想弄了。

    我想了想,对我来说,结合笔记的场景下,最轻松的方式,就是笔记导出的时候,不只是导出 md,而是把代码包一起导出来,我每次只需要把代码包 push 到 github 仓库,github 弄个 action 自动推送到静态托管平台,一气呵成。打开的静态页面,就是思源的 web 页面,不过里面是我的笔记,不可编辑。我再把域名绑定过去,也免去了备案的麻烦。笔记---博客,是一个完整的工作流,双链,图谱都有。

    不过这种与其说是博客,不如说是公开笔记。我的设想下,弄个个人站,分几个类,放在子域名下。博客是一类,属于不常更新的一种,但是要有点个性,平时更新的主要是代码,记录就直接 vscode 写就是了。公开笔记是一类,经常更新,用笔记软件记录,用笔记本来的样式就好,保持笔记本来的样子。或许还可以加别的类
    clark-cui
    @clark-cui 我目前的 github.io 其实搞了两个分支,主分支就是源码,次分支才是 public 文件夹。 这样更新笔记也能用 git 管理
    Achuan-2
    @clark-cui hexo 博客目前我自我感觉良好,思源写文章后直接粘贴过去就好,还是有必要维护一个属于自己的博客的,整理自己觉得有意思的笔记出来 。
    Achuan-2
    @clark-cui 可能我觉得笔记和博客还是要区分开,笔记是写给自己看的,言简意赅,自己明白意思就好,或者背后有复杂的引用关系。博客是公开文章,是提炼,两者区分开好些 。一个是背后,一个是人前
    Achuan-2

推荐标签 标签

  • QQ

    1999 年 2 月腾讯正式推出“腾讯 QQ”,在线用户由 1999 年的 2 人(马化腾和张志东)到现在已经发展到上亿用户了,在线人数超过一亿,是目前使用最广泛的聊天软件之一。

    45 引用 • 557 回帖 • 2 关注
  • Anytype
    3 引用 • 31 回帖 • 11 关注
  • PWA

    PWA(Progressive Web App)是 Google 在 2015 年提出、2016 年 6 月开始推广的项目。它结合了一系列现代 Web 技术,在网页应用中实现和原生应用相近的用户体验。

    14 引用 • 69 回帖 • 175 关注
  • BND

    BND(Baidu Netdisk Downloader)是一款图形界面的百度网盘不限速下载器,支持 Windows、Linux 和 Mac,详细介绍请看这里

    107 引用 • 1281 回帖 • 29 关注
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    99 引用 • 367 回帖
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    12 引用 • 5 回帖 • 635 关注
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 76 关注
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    52 引用 • 190 回帖
  • 周末

    星期六到星期天晚,实行五天工作制后,指每周的最后两天。再过几年可能就是三天了。

    14 引用 • 297 回帖
  • uTools

    uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。

    7 引用 • 27 回帖
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3194 引用 • 8214 回帖
  • Pipe

    Pipe 是一款小而美的开源博客平台。Pipe 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    132 引用 • 1115 回帖 • 119 关注
  • 招聘

    哪里都缺人,哪里都不缺人。

    189 引用 • 1057 回帖
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    34 引用 • 467 回帖 • 759 关注
  • Sillot

    Insights(注意当前设置 master 为默认分支)

    汐洛彖夲肜矩阵(Sillot T☳Converbenk Matrix),致力于服务智慧新彖乄,具有彖乄驱动、极致优雅、开发者友好的特点。其中汐洛绞架(Sillot-Gibbet)基于自思源笔记(siyuan-note),前身是思源笔记汐洛版(更早是思源笔记汐洛分支),是智慧新录乄终端(多端融合,移动端优先)。

    主仓库地址:Hi-Windom/Sillot

    文档地址:sillot.db.sc.cn

    注意事项:

    1. ⚠️ 汐洛仍在早期开发阶段,尚不稳定
    2. ⚠️ 汐洛并非面向普通用户设计,使用前请了解风险
    3. ⚠️ 汐洛绞架基于思源笔记,开发者尽最大努力与思源笔记保持兼容,但无法实现 100% 兼容
    29 引用 • 25 回帖 • 105 关注
  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    167 引用 • 595 回帖 • 1 关注
  • RIP

    愿逝者安息!

    8 引用 • 92 回帖 • 393 关注
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    9387 引用 • 42791 回帖 • 112 关注
  • 脑图

    脑图又叫思维导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。

    31 引用 • 96 回帖
  • GitBook

    GitBook 使您的团队可以轻松编写和维护高质量的文档。 分享知识,提高团队的工作效率,让用户满意。

    3 引用 • 8 回帖 • 1 关注
  • sts
    2 引用 • 2 回帖 • 225 关注
  • Hprose

    Hprose 是一款先进的轻量级、跨语言、跨平台、无侵入式、高性能动态远程对象调用引擎库。它不仅简单易用,而且功能强大。你无需专门学习,只需看上几眼,就能用它轻松构建分布式应用系统。

    9 引用 • 17 回帖 • 618 关注
  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    950 引用 • 943 回帖 • 1 关注
  • MyBatis

    MyBatis 本是 Apache 软件基金会 的一个开源项目 iBatis,2010 年这个项目由 Apache 软件基金会迁移到了 google code,并且改名为 MyBatis ,2013 年 11 月再次迁移到了 GitHub。

    173 引用 • 414 回帖 • 368 关注
  • CodeMirror
    1 引用 • 2 回帖 • 154 关注
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 84 关注
  • Ubuntu

    Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的 Linux 操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu 的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。

    127 引用 • 169 回帖