不换行空格(英语:no-break space,NBSP)是空格字符,用途是禁止自动换行。HTML页面显示时会自动合并多个连续的空白字符,但该字符是禁止合并的,因此该字符也称作“硬空格”(hard space、fixed space)。Unicode码点为:U+00A0 NO-BREAK SPACE。
编辑器一般会把自动换行放在空格字符处。但是,有些文本内容在排版时不适合被放在连续的一行行尾与下一行行首。例如:“100 km”,就不应该在其中间的那个空格处换行。所以编辑器应该在"100"与"km"之间放置一个“不换行空格”,使得"100 km"是不可断开换行的,如果它不适合在行尾的剩余排版空间,就整体排版到下一行行首。
在SGML、HTML、TeX与LaTeX,把连续的空白字符(如空格符、换行符、tab符等)视作一个空格字符。这使得作者可以自由排版其源码而不影响其最终产生的效果。
相反,不换行空格在上述语言环境下,不与其它相邻的空白字符合并,这使得作者可用不换行空格安排格式化排版文本的额外的视觉空间效果。例如在HTML,不换行空格与定宽字符可用来创建对齐的表格:
Column 1 Column 2
-------- --------
1.2 2.3
如果用普通空格符,则HTML排版效果将被合并压缩为这样:
Column 1 Column 2
-------- --------
1.2 2.3