Raising the colon off the ground


There's a fine typographical detail in the Windows 8 TDBN. See if you can spot it.

In the clock, it says 7∶00.

Not 7:00.

The colon between the hour and minutes has been raised slightly.

People that care a lot about these things prevailed upon the development team to make this small refinement to the clock on the TDBN as well as the clock on the taskbar.

Of course, the globalization team had their own concerns about this, because the time separator is not always a colon. And even if it is, changing the character from U+003A to U+2236 would affect right-to-left layout because U+003A is category CS (common number separator) whereas U+2236 is character ON (other neutral), which would result in "7:00" rendering incorrectly as "00:7".

HTML Result
<DIV DIR="rtl">7:00</DIV>
7:00
<DIV DIR="rtl">7∶00</DIV>
7∶00

Furthermore, in languages like Chinese, the U+2236 is wider than U+003A, resulting in too much white space on either side.

A compromise was reached: The colon would be raised off the ground, but only if the current locale uses Latin script. The accessibility name continues to use U+003A so that screen readers will still read the time correctly.

Even though TDBN disappeared in Windows 10, the refinements to the the way time is displayed still exist in the taskbar clock.

Which you probably never noticed, unless you're a typography nerd.

Comments (24)

  1. In my browser, the U+2236 appears lowered relative to a U+003A, not raised. Is there any official or unofficial guidance about how those two glyphs should appear relative to each other?

    The Unicode code chart for U+2236 names it RATIO with the description of “preferred to 003A : for denotation of division or scale in mathematical use”. As best I can tell, the two glyphs appear identical in the code charts, but the code charts readme does contain this disclaimer:

    “The shapes of the reference glyphs used in the Unicode Code Charts are not prescriptive. Considerable variation is to be expected in actual fonts.”

  2. Koro says:

    I took a screenshot of my taskbar clock and zoomed in, the bottom dot of the colon is aligned with the text baseline (this machine is on Windows 10 1607).

    1. Jan Ringoš says:

      Same. On my 1607 (LTSB), but at work on 1709 it is indeed U+2236;

  3. laonianren says:

    The traditional British time separator is a full stop, e.g. 4.45 p.m. Windows doesn’t offer this as a choice, though you can create a custom format in the old control panel date/time settings. Ironically, it was poorly localised software and devices that lead to the colon being widely using as a time separator here.

    This comment was brought to you by “∶” (U+2236, aka PRETTY COLON)

    1. Jan Ringoš says:

      Yeah, a lot of us miss Michael. It’s still shame how all that huge pile of knowledge he left us almost got lost.

  4. R P (MSFT) says:

    I noticed it in the HTML of your TDBN mockup last week, but I’d never noticed it before that. And I am a typography nerd.

    1. Ray Koopa says:

      Same here. We’re just getting old, incapable of spotting such things.

      1. R P (MSFT) says:

        If I’m 100% honest, what I’d actually never noticed is that the “normal” colon is aligned to the baseline, though with a moment’s thought it’s obvious that it would be.

        1. This is slightly more obvious in Swedish, perhaps, because the colon is used every time you add a suffix to an initialism, a letter, a digit, or a code or symbol of some sort (for instance, to form plural, “bestämd form”, or genitive): DLL:er, tv:n, SVT:s, CO2:s, 5:a, 7:or. In most cases, the “suffix” is written using small letter, and very often the part before it consists of much taller glyphs. This kind of emphasises the vertical alignment of the colon.

  5. Anders Munch says:

    Do you know why the people-that-care wanted a character called RATIO as the sexagesimal separator? The time is not a ratio, you can’t meaningfully divide the number of hours by the number of minutes.

    1. Kevin says:

      Unicode characters cannot be renamed because of the Unicode Stability Policy. Many emoji are similarly misnamed (e.g. U+1F624 FACE WITH LOOK OF TRIUMPH). RATIO is a poor name because it is overly focused on the semantic meaning of the symbol in one particular use case. Its intended presentation is “a colon that looks good between two numbers” which makes it entirely appropriate for a time separator.

      1. Ray Koopa says:

        What’s wrong with “FACE WITH LOOK OF TRIUMPH”? That’s exactly how I look after showing off my new vast knowledge of colon typography on the Windows clock.

    1. Not sure what you mean. It still supports languages other than English.

      1. Karl says:

        “Windows for many years now has been multilingual. This means that the same underlying code runs regardless of language.”

        if (current_locale == Latin_script) {
        // Code that only runs when current locale uses Latin script
        RaiseColonInTDBN();
        }

        1. But it’s the same code. If you install the Hebrew version of Windows, the same code still runs. (The branch is taken differently, but you could bring it back by setting your UI language to a Latin script language.)

          By comparison, the pre-multilingual version would be

          #if !(defined(RTL_EDITION) || defined(CJK_EDITION) || defined(ANY_OTHER_EDITION_THAT_LOOKS_BAD_WITH_RAISED_COLON))
          RaiseColonInTDBN();
          #endif

          With the pre-multilingual version, different code exists depending on the edition. If you install the English edition, you get the raised colon, even if you change your locale to Hebrew.

    2. Nick says:

      The relevant pull quote from that article is “Changing a language merely changes the strings being displayed.” Remains true here: if you have a Latin script, you get one string; if you don’t have a Latin script, you get a different string. The UI feature itself is not modified by locale.

  6. Tim! says:

    How did this change get past the -100 point default?

    1. Windows 8 was a whole.new user interface, so there was a lot of attention to polish.

  7. This is interesting. ∶ is U+2236: RATIO in block “Mathematical operators”, which I would guess would be used to indicate ratios, or fractions, like 1∶1000.

    Indeed, the official Unicode document [1] says, “preferred to 003A : [the ASCII colon, my remark] for denotation of division or scale in mathematical use”.

    Hence, this doesn’t feel like elegant typography to me; it feels more like semantic misuse of Unicode characters, a bit like using the masculine ordinal indicator (º) instead of the degree sign (°, extremely common mistake).

    [1] https://www.unicode.org/charts/PDF/U2200.pdf

  8. jon says:

    All this, and no one noticed the clock had jumped 50 pixels to the left from where it should be?

  9. Apple also did that in their new San Francisco font family, although in a different way: if U+003A has digits on both sides, its glyph becomes the centered colon, so this detail is implemented system-wide. Search for “colon” on this page for an animation: https://medium.com/@amachino/the-secret-of-san-francisco-fonts-4b5295d9a745

  10. cheong00 says:

    How about using U+02F8 (Modifier letter raised colon)? IMO the fact that “Modifier letters” do not cause word breaks and will not be included in word selection makes it a good candidate for consideration.

  11. Nico says:

    This is one of those things that you would never notice if someone else didn’t call it out, but once they do you can never un-see it. Thanks a lot Raymond!

    That said, I must admit the time on my 1803 Win10 taskbar does look nice.

Skip to main content