本文作者: jsweibo
本文链接: https://jsweibo.github.io/2019/03/27/%E4%BB%80%E4%B9%88%E6%98%AF%E9%9B%B6%E5%AE%BD%E5%BA%A6%E7%A9%BA%E6%A0%BC%E7%AC%A6/
摘要
本文主要讲述了:
- 什么是零宽度空格符
- HTML 中的零宽度空格符
- JavaScript 中的零宽度空格符
正文
什么是零宽度空格符
零宽度空格符是 1 个 Unicode 字符,Unicode 码点是U+200B
,UTF-8 编码是E2 80 8B
。
零宽度空格符用于打断长英文单词或长阿拉伯数字,以便于在一行容纳不下时自动分成多行显示。
如果不使用零宽度空格符,长英文单词和长阿拉伯数字会越过盒模型的边界。
和软连字符的区别在于:
- 零宽度空格符始终时不可见的
- 软连字符在平时是不可见的,只有在分成多行显示时才能在上一行的行末看到
HTML 中的零宽度空格符
在 HTML 中,以字符值引用的形式使用零宽度空格符。
示例:在 HTML 中使用零宽度空格符。
1 |
|
在 HTML 中,零宽度空格符与<wbr>
等效。
示例:
1 |
|
JavaScript 中的零宽度空格符
在 JavaScript 中,零宽度空格符占据 1 字符串长度。
示例:在 JavaScript 中,以 UTF-16BE 编码的形式使用零宽度空格符。
1 | const foo = 'abc\u200bdef'; |