# strings.Truncate
> 返回给定字符串，截断到最大长度，同时不切断单词、不留下未闭合的 HTML 标签。
- 官方英文原文：https://gohugo.io/functions/strings/truncate/
- 本页规范地址：https://hugozh.cn/functions/strings/truncate/
- 最近更新：2026-10-02
- 最后提交：912b1d3 chore(site): 添加 static/CNAME（hugozh.cn），供 GitHub Pages 等平台绑定自定义域名
- 签名：strings.Truncate SIZE [ELLIPSIS] STRING
- 返回类型：template.HTML
- 站点：Hugo 中文文档（https://hugozh.cn/）· 社区维护的非官方中文翻译，如有出入以官方英文原文为准

---
截断被标记为安全 HTML 的值（例如 [`safe.HTML`][] 函数返回的值）时，`strings.Truncate` 会补全因截断而未闭合的标签，而不是从标签中间切断：

```go-html-template
{{ "<em>Keep my HTML</em>" | safeHTML | strings.Truncate 10 }} → <em>Keep my …</em>
```

> [!NOTE]
> 如果有一段包含 HTML 标签的原始字符串需要按 HTML 处理，请先用 [`safe.HTML`][] 函数转换；否则 `strings.Truncate` 会转义这些标签。

[`safe.HTML`]: /functions/safe/html/

