Hugo使用shortcode渲染红链时链接尾部多出空格如何解决
这个多余空格的根源是Go模板默认会保留模板文件中所有不在指令内的空白字符(包括换行、空格),你当前的短代码文件中</a>标签后的换行,渲染时会被转换为空格插入到链接和后续标点之间。
解决方法
1. 修改短代码模板red-link.html
使用Go模板的空白控制语法(在模板指令的大括号内侧加-)吞噬所有不必要的空白,修改后代码如下:
{{- /* 消除模板开头的所有空白 */ -}} <a href="{{ .Get "url" }}" class="red-link">{{ with .Get "title" }}{{- . -}}{{ else }}{{- .Get "url" -}}{{ end }}</a> {{- /* 消除模板结尾的所有空白,核心是去掉</a>后换行转换的空格 */ -}}
2. 确认短代码调用格式
保持现有调用写法即可,确保短代码闭合标记>和后续标点之间没有额外空格:
Here is an {{< red-link title="example red link" url="#" >}}.
修改后重新生成站点即可达到预期渲染效果。
内容的提问来源于stack exchange,提问作者catertot
相关产品推荐
相关产品推荐

