When I do the following (for example): (put-text-property (point) (1+ (point)) 'display (propertize "." 'face 'header-line)) The character at point becomes a dot with a gray background. If I then enable hl-line-mode, the line turns green, as expected. However, the dot still has a gray background; it does not turn green with the rest of the line. It appears that hl-line-mode uses an overlay to highlight the line. From the overlay documentation, "Currently, all overlays take priority over text properties." But it seems like in this case, the display text property is taking priority over the the overlay. Since I'm embedding the face into the display string, I expect it to take priority over any faces that are applied to the text, but not over any overlays which affect it.