/* 길이 값으로 사용됨 */
width: fit-content;
min-width: fit-content;
max-width: fit-content;
height: fit-content;
min-height: fit-content;
max-height: fit-content;
flex-basis: fit-content;
/* 그리드 트랙에서 사용할 수 없음.
   유효하지 않은 속성의 값 */
grid-template-columns: 150px 1fr fit-content;
<div class="parent">
    <p class="child">부모 요소보다 너비가 충분히 작음</p>
</div>
.parent {
    width: 300px;
    background-color: silver;
    border: 5px dashed red;
}
.child {
    width: fit-content;
    background-color: gold;
}
실제 적용된 모습
<div class="parent">
    <p class="child">There's a very loooooooooong text</p>
</div>
.parent {
    width: 50px;
    background-color: silver;
    border: 5px dashed red;
}
.child {
    width: fit-content;
    background-color: gold;
}
실제 적용된 모습
<div class="parent">
    <p class="child">
        min-content 값을 사용하기에는 충분한 공간 크기이지만,
        max-content 값을 사용하면 오버플로가 발생하는 공간 크기이면
        해당 축(너비나 높이 축)의 컨테이닝 블록(containing block)을 꽉 채우는 크기(stretch-fit)의
        auto 값을 적용합니다.
    </p>
</div>
.parent {
    width: 300px;
    background-color: silver;
    border: 5px dashed red;
}
.child {
    width: fit-content;
    background-color: gold;
}
실제 적용된 모습
<h4>height: fit-content</h4>
<div class="parent">
    <div class="child fit-content-item">height의 fit-content</div>
    <div class="child fit-content-item">height의 fit-content 값의 이해</div>
    <div class="child fit-content-item">
        max-content 값을 사용해도 오버플로가 발생하지 않는 충분한 공간 크기에서는 max-content 값을 적용합니다.
        min-content 값을 사용해야지만 오버플로가 발생하지 않을 정도이거나 더 작은 공간 크기에서는 min-content 값을 적용합니다.
        그 사이의 공간 크기에서는 auto 값을 적용합니다.
    </div>
</div>
<h4>height: auto</h4>
<div class="parent">
    <div class="child auto-item">height의 fit-content</div>
    <div class="child auto-item">height의 fit-content 값의 이해</div>
    <div class="child auto-item">
        max-content 값을 사용해도 오버플로가 발생하지 않는 충분한 공간 크기에서는 max-content 값을 적용합니다.
        min-content 값을 사용해야지만 오버플로가 발생하지 않을 정도이거나 더 작은 공간 크기에서는 min-content 값을 적용합니다.
        그 사이의 공간 크기에서는 auto 값을 적용합니다.
    </div>
</div>
.parent {
    display: flex;
    align-items: stretch;
    background-color: silver;
    border: 5px dashed red;
    gap: 10px;
    padding: 10px;
    width: 300px;
    height: 330px;
}
.child {
    background-color: gold;
    border: 1px solid navy;
    padding: 5px;
}
.fit-content-item {
    height: fit-content;
}
.auto-item {
    height: auto;
}
실제 적용된 모습
selector {
    width: calc(fit-content + 50px); /* 유효하지 않은 속성 값입니다. */
}

caniuse.com에서 더 자세한 정보를 확인해 보세요.