https://drafts.csswg.org/css-align/#valdef-justify-items-legacy
This keyword causes the value to effectively inherit into descendants.
If the legacy keyword appears on its own (without an accompanying left, right, or center keyword): if the inherited value of justify-items includes the legacy keyword, this value computes to the inherited value; otherwise it computes to normal.
When justify-self:auto references the value of justify-items, only the alignment keyword, not the legacy keyword, is referenced by it. It exists to implement the legacy alignment behavior of HTML’s <center> element and align attribute.
Well, it fails to fulfill its only purpose, because <center> and align allow automatic sizes to stretch.
https://drafts.csswg.org/css-align/#justify-self-property
Values other than stretch cause a width/height of auto to be treated as fit-content.
<!DOCTYPE html>
<div align="center">
<div style="border: solid">foo</div>
</div>
<div style="justify-items: legacy center">
<div style="border: solid">foo</div>
</div>
In Blink:
