SymbolFYI

En Dash

Typography
التعريف

A typographic dash (–, U+2013) the width of a letter N, used for ranges (e.g., 1–10) and relationships.

The en dash is a typographic punctuation mark at Unicode code point U+2013, named for its traditional width -- approximately equal to the width of the capital letter N in a given typeface. It occupies a middle ground between the hyphen-minus (U+002D) and the em dash (U+2014), and has specific conventional uses that distinguish it from both.

Primary Uses

Ranges of values -- The en dash is the standard connector for numerical ranges, date ranges, and time spans:

Pages 12-24
June-August 2024
9:00 AM-5:00 PM
Temperature range: 15-20 degrees C

Connections between items of equal weight -- When two nouns or proper names are joined as a compound modifier with equal relationship:

New York-London flight
Nature-nurture debate
Lefebvre-Okonkwo theorem

Note that a hyphen would be used if one element is a single unhyphenated word, but an en dash is appropriate when either element is itself a compound or multi-word phrase.

HTML and CSS Usage

<!-- Recommended: named entity -->
&ndash;

<!-- Hex entity -->
&#x2013;

<!-- Decimal entity -->
&#8211;

<!-- Direct insertion in UTF-8 document -->
Pages 12-24
/* Generate en dash via CSS content property */
.range::after {
  content: ' \2013 ';
}

En Dash vs Hyphen-Minus vs Em Dash

Character Code Point Name Typical Use
- U+002D Hyphen-Minus Word hyphenation, compound adjectives, negative sign
en dash U+2013 En Dash Ranges, equal-weight connections
em dash U+2014 Em Dash Parenthetical breaks, attribution
non-breaking hyphen U+2011 Non-breaking Hyphen Hyphen that prevents line breaks

Spacing Conventions

Spacing around the en dash varies by style guide:

  • AP Style / US journalism: no spaces for ranges, but spaces in compound connections
  • Chicago Manual of Style: no spaces in either context
  • UK style: spaces around en dashes used as parenthetical dashes

Keyboard Input

macOS:        Option + Hyphen
Windows:      Alt + 0150 (numeric keypad)
Linux/GTK:    Compose, -, -
MS Word:      Type word, hyphen, word (AutoCorrect)

JavaScript String Operations

// Check for en dash in a string
const hasEnDash = str.includes('\u2013');

// Normalize typographic dashes to ASCII for data processing
function normalizeDashes(str) {
  return str
    .replace(/\u2013/g, '-')  // en dash -> hyphen
    .replace(/\u2014/g, '--') // em dash -> double hyphen
    .replace(/\u2012/g, '-'); // figure dash -> hyphen
}

// Format a numeric range with proper en dash
function formatRange(start, end) {
  return `${start}\u2013${end}`;
}

Accessibility

Screen readers handle en dashes inconsistently. NVDA may read the en dash as "dash" or skip it; JAWS may say "en dash." For ranges, consider using the word "to" in text alternatives or aria-label to ensure the range is communicated clearly to all users.

الرموز ذات الصلة

المصطلحات ذات الصلة

الأدوات ذات الصلة

الأدلة ذات الصلة