example.toolbardemonstration
The action that leaves the row
A toolbar drawn for three short labels. It was given a fixed height, no wrapping and no scrolling, because in the source language it never needed any.
orders · toolbar
row overflows · no wrap · no scroll
The third action is still in the markup and still focusable, and nobody using a mouse will ever find it. Either the row wraps, or the least used action moves into a menu.
example.wrapdemonstration
The row that stops lining up
Three cards, side by side, each with a title and a button. One title is now long enough to take three lines instead of one.
Nothing is cut and nothing is unreadable, yet the three buttons now sit at three different heights, which reads as carelessness in any language. A shared row height, or titles pinned to a fixed number of lines, settles it.
example.truncatedemonstration
The two-line card and the three-line sentence
A notification card built to hold two lines. In the source language the date sat on the first line; after translation it has moved to the third.
notifications · harbourlane.example
Harbour Lane Books
cut here
Truncation is not automatically a fault. It becomes one when the part removed is the part the message existed for. Harbour Lane Books is invented, as is everything on this card.
example.errordemonstration
The error message with nowhere to go
The space under the field was given a fixed height, sized against the shortest error the form could produce.
The message needs two lines and the layout allows it one. The user is told that something is wrong, while the half of the sentence explaining what has been cut away.
example.untranslateddemonstration
The strings that never left home
Two menu entries were built in the code rather than read from the file, so they were never sent for translation and nobody noticed until the screen existed.
This one is fixed in the code rather than in the string file: the string has to be taken out of the code and put into the file before it can be translated at all.
example.terminologydemonstration
One idea, two names, two screens apart
The same source term was translated twice, by two people, at two different times, with no agreed list between them.
terminology · two screens
same source term · two renderings
Nothing is cut, nothing overflows, and every automated check passes, so there is nothing here for a check to catch, and it is the one an agreed terminology list prevents outright.
example.directionschematic
The icon that stayed where it was
The page was mirrored for a right-to-left layout, but the icon inside the search field was positioned in absolute terms rather than relative to the reading direction.
search · dir="rtl"
icon pinned to the left edge
The text now begins at one end of the field and the symbol that explains it sits at the other, hard against the previous element. Logical properties fix it; a second stylesheet for the mirrored version does not, because the position is still stated in absolute terms.
example.datedemonstration
The date that means two things
A confirmation screen showing a delivery date in digits only, formatted by whatever the system it was generated on happened to be set to.
order · confirmation
arriving
04/09/2026
4 September, or 9 April
arriving
4 September 2026
one reading only
In en-GB the day comes first, so 04/09/2026 is 4 September. Under a month-first convention the same six digits are 9 April. Where a date carries a consequence, spelling the month out removes the question entirely.