跳转到内容

图书馆:不换行空格

维基百科,自由的百科全书

{{Refimprove|time=2019-03-27T03:06:34+00:00}}

{{NoteTA | G1 = IT }} {{Infobox punctuation mark | mark = {{background color|#CEEEF2| }} | name = 不换行空格 | unicode = {{unichar|00A0|NO-BREAK SPACE|html=}} | see_also = {{unichar|0020|SPACE|nlink=Space (punctuation)|note=Note: Representations here of a regular space are replaced with a no-break space|html=}}
Other types of spaces }} 不换行空格({{Lang-en|no-break space}},{{Lang|en|NBSP}})是空格字符,用途是禁止自动换行HTML页面显示时会自动合并多个连续的空白字符,但该字符是禁止合并的,因此该字符也称作“硬空格”(hard space、fixed space)。Unicode码点为:{{unichar|A0|NO-BREAK SPACE}}。

禁止自动换行

[编辑]

编辑器一般会把自动换行放在空格字符处。但是,有些文本内容在排版时不适合被放在连续的一行行尾与下一行行首。例如:“100 km”,就不应该在其中间的那个空格处换行。所以编辑器应该在"100"与"km"之间放置一个“不换行空格”,使得"100 km"是不可断开换行的,如果它不适合在行尾的剩余排版空间,就整体排版到下一行行首。

禁止合并空白字符

[编辑]

SGMLHTML{{TeX}}{{Serif|{{LaTeX}}}},把连续的空白字符(如空格符、换行符、tab符等)视作一个空格字符。这使得作者可以自由排版其源码而不影响其最终产生的效果[1][2]

相反,不换行空格在上述语言环境下,不与其它相邻的空白字符合并,这使得作者可用不换行空格安排格式化排版文本的额外的视觉空间效果。例如在HTML,不换行空格与定宽字符可用来创建对齐的表格:

   Column 1  Column 2
   --------  --------
        1.2       2.3

如果用普通空格符,则HTML排版效果将被合并压缩为这样:

Column 1 Column 2
-------- --------
1.2 2.3

不同宽度的变种

[编辑]
  • 不换行窄空格(No-break thin space,Unicode命名为“Narrow No-Break Space”,{{unichar|202F|NARROW NO-BREAK SPACE}}). Unicode 3.0引入该字符用于蒙古文,把词的后缀与词干分开。也用于法文(在?, !, ;之前)与俄文(在之前)的标点符号。
  • 词连接(Word joiner), Unicode 3.2引入该字符:U+2060。HTML作为⁠。该字符不占用字宽(实际上是个不可打印字符),但禁止在该字符两侧发生换行。
  • 字节顺序标记, U+FEFF, Unicode命名为“Zero Width No-Break Space”。但在文本中间使用该字符是过时的用法,应该用 连词字符 U+2060这个字符代替作为“0宽度不换行”字符的功能。

编码

[编辑]

{{charmap |00A0|name1=不换行空格符|image1={{background color|#CEEEF2| }} |map1=ISO/IEC 8859 (1-16) / ECMA-94 |map1char1=A0 |map2={{tsl|en|Windows code page}}:{{tsl|en|Windows-1250|Windows-1250|1250}},{{tsl|en|Windows-1251|Windows-1251|1251}},1252,{{tsl|en|Windows-1253|Windows-1253|1253}},{{tsl|en|Windows-1254|Windows-1254|1254}},{{tsl|en|Windows-1255|Windows-1255|1255}},{{tsl|en|Windows-1256|Windows-1256|1256}},{{tsl|en|Windows-1257|Windows-1257|1257}},{{tsl|en|Windows-1258|Windows-1258|1258}} |map2char1=A0 |map3=KOI8-RKOI8-U |map3char1=9A |map4=DOS 代码页437,{{tsl|en|Code page 850|代码页850|850}},{{tsl|en|Code page 851|代码页851|851}},{{tsl|en|Code page 852|代码页852|852}},{{tsl|en|Code page 853|代码页853|853}},{{tsl|en|Code page 855|代码页855|855}},{{tsl|en|Code page 856|代码页856|856}},{{tsl|en|Code page 857|代码页857|857}},{{tsl|en|Code page 858|代码页858|858}},{{tsl|en|Code page 859|代码页859|859}},{{tsl|en|Code page 860|代码页860|860}},{{tsl|en|Code page 861|代码页861|861}},{{tsl|en|Code page 862|代码页862|862}},{{tsl|en|Code page 863|代码页863|863}},{{tsl|en|Code page 864|代码页864|864}},{{tsl|en|Code page 865|代码页865|865}},{{tsl|en|Code page 866|代码页866|866}},{{tsl|en|Code page 867|代码页867|867}},{{tsl|en|Code page 869|代码页869|869}} |map4char1=FF |map5={{tsl|en|HP Roman#HP_Roman-8|HP Roman#HP_Roman-8|HP Roman-8}},{{tsl|en|HP Roman#HP_Roman-9|HP Roman#HP_Roman-9|HP Roman-9}} |map5char1=A0 |map6={{tsl|en|Lotus International Character Set|莲花国际字符集|LICS}} |map6char1=9A |namedref1=ASCII, ISO/IEC 646|ref1char1=(无) |namedref2=TeX|ref2char1=~ |namedref3=EBCDIC|ref3char1=十六进制{{code|41}} – RSP(Required Space,必须的空格) }}

键盘输入法

[编辑]
操作系统/应用程序 输入方法
Apple Mac OS X Opt|Space}}
X11 {{tsl|en|Compose key|撰写键|Compose}} }}, {{key press|Space}}, {{key press|Space}}
GNU Emacs Ctrl|X}} {{key press|8}} {{key press|Space}}
Vim Ctrl|K}}, {{key press|Space}}, {{key press|Space}}; or {{key press|Ctrl|K}}, {{key press|Shift|N}}, {{key press|Shift|S}}
Dreamweaver, LibreOffice, Microsoft Word,
OpenOffice.org (3.0以后)
Ctrl|Shift|Space}}
WordPerfect, OpenOffice.org (3.0以前), LyX Ctrl|Space}}
Mac Adobe InDesign Opt|Cmd|X}}

参考文献

[编辑]
  1. ^ {{Citation | url = http://www.w3.org/TR/1999/REC-html401-19991224/struct/text.html#h-9.1 | publisher = W3 | date = 1999-12-24 | title = HTML 4.01 | chapter = Structure | accessdate = 2013-06-01 | archive-date = 2022-05-16 | archive-url = https://web.archive.org/web/20220516223300/http://www.w3.org/TR/1999/REC-html401-19991224/struct/text.html#h-9.1 }}.
  2. ^ {{Citation | url = http://www.w3.org/TR/CSS21/text.html#white-space-prop | publisher = W3 | title = CSS 2.1 | chapter = Text | accessdate = 2013-06-01 | archive-date = 2022-04-07 | archive-url = https://web.archive.org/web/20220407115002/http://www.w3.org/TR/CSS21/text.html#white-space-prop }}.

Category:控制字符 Category:字体排印 Category:Unicode