Major unresolved issues with or opposition to this specification:
the current version of the editor's draft doesn't yet reflect the latest status of the working group resolutions in terms of how the syntax space is distributed across the longhands; w3c/csswg-drafts#14508 is a PR making these changes
w3c/csswg-drafts#14448, arguing that block-ellipsis's behavior of discarding the line's contents when there are no soft wrap opportunities is "clearly a bad result"
-webkit-line-clamp has been supported in all mainstream browser engines for years, even though it was not specified anywhere. There are cases, however, where the legacy behavior of mainstream engines is interoperable but where this specification changes the behavior. We don't expect breakage in the wild, since browsers aren't interoperable in many other cases, but it is possible that we might find some.
In the legacy behavior, content after the clamp point renders normally, except it is usually outside the box of the -webkit-line-clamp container, so that needs overflow: hidden to hide it. In the spec'd behavior, content after the clamp point becomes invisible and is counted as ink overflow, so overflow: hidden is not needed.
In the legacy behavior, if the ellipsis wouldn't fit at the end of a line, glyphs and atomic inlines would be removed off the end of the line to make it fit, as with text-overflow: ellipsis. In the spec'd behavior, inline content at the end of the line is displaced until the last soft wrap opportunity such that the ellipsis fits; and if there are none, the entire contents of the line are displaced.
In the legacy behavior, floats can overflow the -webkit-line-clamp container, but since overflow: hidden is almost always used, in practice they will be always clipped to the padding box. In the spec'd behavior, float clearance is not taken into account for the container's automatic sizing (meaning that floats can overflow despite the container establishing an independent formatting context), and floats before the clamp point are clipped to the container's content edge.
In Chromium, we are planning to ship line-clamp soon. We would only be shipping line-clamp as a longhand, and only ship its longhands at some point in the future. We will also be changing the legacy behavior of -webkit-line-clamp to match line-clamp at the same time.
<!-- Content below this is maintained by @w3c-tag-bot -->
OpenedSep 29, 2026
Specification
https://drafts.csswg.org/css-overflow-4/#suppressing-excess
Explainer
https://github.com/Igalia/explainers/blob/main/css/line-clamp/README.md
Links
The specification
Where and by whom is the work is being done?
Feedback so far
block-ellipsis's behavior of discarding the line's contents when there are no soft wrap opportunities is "clearly a bad result"You should also know that...
-
- In the legacy behavior, content after the clamp point renders normally, except it is usually outside the box of the
- In the legacy behavior, if the ellipsis wouldn't fit at the end of a line, glyphs and atomic inlines would be removed off the end of the line to make it fit, as with
- In the legacy behavior, floats can overflow the
-
-
<!-- Content below this is maintained by @w3c-tag-bot -->-webkit-line-clamphas been supported in all mainstream browser engines for years, even though it was not specified anywhere. There are cases, however, where the legacy behavior of mainstream engines is interoperable but where this specification changes the behavior. We don't expect breakage in the wild, since browsers aren't interoperable in many other cases, but it is possible that we might find some.-webkit-line-clampcontainer, so that needsoverflow: hiddento hide it. In the spec'd behavior, content after the clamp point becomes invisible and is counted as ink overflow, sooverflow: hiddenis not needed.text-overflow: ellipsis. In the spec'd behavior, inline content at the end of the line is displaced until the last soft wrap opportunity such that the ellipsis fits; and if there are none, the entire contents of the line are displaced.-webkit-line-clampcontainer, but sinceoverflow: hiddenis almost always used, in practice they will be always clipped to the padding box. In the spec'd behavior, float clearance is not taken into account for the container's automatic sizing (meaning that floats can overflow despite the container establishing an independent formatting context), and floats before the clamp point are clipped to the container's content edge.Review on the naming of
line-clamp's longhands would be appreciated. For example, there were questions raised on the name of theblock-ellipsisproperty, since its keywords areellipsisandno-ellipsis(see https://github.com/w3c/csswg-drafts/issues/13670#issuecomment-4179822644). We would also appreciate feedback on the name of thecontinueproperty, considering also that there are plans to extend this property to handle channeling overflow (https://drafts.csswg.org/css-overflow-5/#fragmentation).In Chromium, we are planning to ship
line-clampsoon. We would only be shippingline-clampas a longhand, and only ship its longhands at some point in the future. We will also be changing the legacy behavior of-webkit-line-clampto matchline-clampat the same time.Track conversations at https://tag-github-bot.w3.org/gh/w3ctag/design-reviews/1287