Как плавно скрыть контент в блоке независимо от фона?

За плавное скрытие отвечает это свойство

background: linear-gradient(to right, transparent, #fff);

Как можно плавно скрывать текст, при этом независимо на каком фоне находится текст?

Фон заранее неизвестен, он может быть любой, меняется постоянно (фон сайта, наведение и тд.)

.item {
  display: flex;
  align-items: center;
}
.item:nth-child(even) {
    background: #f2f2f2;
}
.item:hover {
    background: #9f9fff;
}
.item.active {
  background: #9fefff;
}
.hiddenend {
  display: inline-block;
  max-width: 100px;
  width: 100%;
  overflow: hidden;
  position: relative;
}
.hiddenend:after {
  content: '';
  width: 14px;
  height: 100%;
  display: block;
  background: linear-gradient(to right, transparent, #fff);
  position: absolute;
  top: 0;
  right: 0;
}
<div class="item"><span class="hiddenend">123885.5856257</div>
<div class="item"><span class="hiddenend">123234885.5856857</div>
<div class="item active"><span class="hiddenend">1233885.58457</div>


Ответы (2 шт):

Автор решения: Dias

На js например:

const hid = document.querySelectorAll('.hiddenend');
hid.forEach(i => {
const hidbg = window.getComputedStyle(i.parentNode),
            spanhid = document.createElement('span');
spanhid.classList.add('hiddenendSpan');
spanhid.style.background = 'linear-gradient(to right, transparent, '+hidbg.backgroundColor+'';
i.append(spanhid);

});
.item {
  display: flex;
  align-items: center;
  background: #fff;
}
.item:nth-child(even) {
    background: #f2f2f2;
}
.item:hover {
    background: #9f9fff;
}
.item.active {
  background: #9fefff;
}
.hiddenend {
  display: inline-block;
  max-width: 100px;
  width: 100%;
  overflow: hidden;
  position: relative;
}
.hiddenendSpan {
  content: '';
  width: 20px;
  height: 100%;
  display: block;
  background: linear-gradient(to right, transparent, #fff);
  position: absolute;
  top: 0;
  right: 0;
}
<div class="item"><span class="hiddenend">123885.5856257</div>
<div class="item"><span class="hiddenend">123234885.5856857</div>
<div class="item active"><span class="hiddenend">1233885.58457</div>

→ Ссылка
Автор решения: TaniaLinn

вот. Только поддержка не самая полная, firefox до 48 версии и edge до 14 не поддерживают.

.wrap {
  background: gray;
}

.text {
  width: 485px;
  font-size: 40px;
  font-weight: bold;
  background: linear-gradient(to right, red, transparent 70%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
<div class="wrap">
  <p class="text">Lorem ipsum dolor sit amet.</p>
</div>

→ Ссылка