Zero-width space

From Wikipedia, the free encyclopedia
(Redirected from Zero width space)

Template:Short description Template:Infobox non-printing character Script error: No such module "Distinguish". The zero-width space (rendered: Page Template:Kbd/styles.css has no content.; HTML entity: Page Template:Kbd/styles.css has no content.​ or Page Template:Kbd/styles.css has no content.​), abbreviated ZWSP, is a non-printing character used in computerized typesetting to indicate where the word boundaries are, without actually displaying a visible space in the rendered text. This enables text-processing systems for scripts that do not use explicit spacing to recognize where word boundaries are for the purpose of handling line breaks appropriately.

The zero-width space is Unicode character U+200B, and is located in the Unicode General Punctuation block. In HTML, it can be represented by the character entity reference ​.

Purpose

The zero-width space marks a potential line break without hyphenation. Its semantics and HTML implementation are similar to the soft hyphen, but soft hyphens display a hyphen character at the point where the line is broken.

The zero-width space can be used to mark word breaks in languages without visible space between words, such as Thai, Myanmar, Khmer, and Japanese.[1]

In justified text, the rendering engine may add inter-character spacing, also known as letter spacing, between letters separated by a zero-width space, unlike around fixed-width spaces.[1]

Example

To show the effect of the zero-width space in text, the following words have been separated with zero-width spaces:

By contrast, the following words have not been separated:

LoremIpsumDolorSitAmetConsecteturAdipiscingElitSedDoEiusmodTemporIncididuntUtLaboreEtDoloreMagnaAliquaUtEnimAdMinimVeniamQuisNostrudExercitationUllamcoLaborisNisiUtAliquipExEaCommodoConsequatDuisAuteIrureDolorInReprehenderitInVoluptateVelitEsseCillumDoloreEuFugiatNullaPariaturExcepteurSintOccaecatCupidatatNonProidentSuntInCulpaQuiOfficiaDeseruntMollitAnimIdEstLaborum

The first text is broken into lines but only at word boundaries, and resizing the browser window will re-break the text accordingly, while the second text is not broken at all.

Usage

HTML

In HTML pages, the HTML element <wbr> functions as a zero-width space. In Internet Explorer 6, the zero-width space was not supported in some fonts.[2]

Prohibition in domain names

ICANN rules prohibit domain names from containing non-displayed characters, including the zero-width space, and most browsers prohibit their use within domain names because they can be used to create a homograph attack, where a malicious URL is visually indistinguishable from a legitimate one.[3][4]

Encoding

Script error: No such module "Charmap". The zero-width space character is encoded in Unicode as Page Template:Mono/styles.css has no content.U+200B Script error: No such module "Unicode data"..[5]

In HTML, it can be referenced as &ZeroWidthSpace;, &#8203; or &#x200B;. Additionally, the character entities &NegativeThickSpace;, &NegativeMediumSpace;, &NegativeThinSpace;, and &NegativeVeryThinSpace; all also refer to the zero-width space, contrary to what their names suggest.[6]

The TeX representation is \hskip0pt; the LaTeX representation is \hspace{0pt};[7] and the groff representation is \:.[8]

See also

References

Citations

Page Template:Reflist/styles.css has no content.

  1. ^ a b Page Module:Citation/CS1/styles.css has no content."23.2 Layout Controls". The Unicode Standard Version 15.0 – Core Specification (PDF). The Unicode Consortium. September 2022. p. 918. ISBN 978-1-936213-32-0.
  2. ^ Page Module:Citation/CS1/styles.css has no content.Dunae, Alex. "Better Web Typography with Spaces and Hyphens". dunae.ca. Archived from the original on December 14, 2010. Retrieved December 3, 2009.
  3. ^ Page Module:Citation/CS1/styles.css has no content."Network.IDN.blacklist_chars". mozillaZine. Retrieved 2018-02-07.
  4. ^ Page Module:Citation/CS1/styles.css has no content."Unicode Character 'Zero Width Space'". FileFormat.Info. Retrieved 2018-02-07.
  5. ^ Page Module:Citation/CS1/styles.css has no content."General Punctuation – Unicode" (PDF). Retrieved 2013-07-20.
  6. ^ Entities/ZeroWidthSpace in MathML Version 2.0
  7. ^ Page Module:Citation/CS1/styles.css has no content."The LaTeX Companion. Chapter 3: Basic Formatting Tools" (PDF). Retrieved 2019-07-16.
  8. ^ Page Module:Citation/CS1/styles.css has no content."groff(7) – Linux manual page". Retrieved 2014-02-08.

Sources

Page Template:Refbegin/styles.css has no content.

Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found.