Сложность в том, что в вашем примере градиент равномерно отображается как на текст, так и на контейнер. Как показано многими людьми, прозрачный градиент легко сопоставить со свойством background, но текст останется неизменным.
К сожалению, я не думаю, что есть какой-то простой способ получить эффект градиента, который вы хотите, без каких-либо компромиссов, в зависимости от ваших потребностей, они могут быть полезными решениями. Таким образом, вот два примера того, как добиться эффекта, показанного на вашем примере изображения, оба с использованием <canvas>
.
1. Подделка
Демонстрация JSLint.
Это просто, вы размещаете элемент <canvas>
над вашим текстовым блоком и рисуете градиент от полностью прозрачного до цвета фона под текстовым блоком. Это не совсем прозрачно, поэтому на самом деле не показывает никакой информации ниже, но если вы пытаетесь перейти в сплошной, заданный цвет, то это работает довольно хорошо.
2. Текст холста
Демонстрация на JSLint
Этот пример более сложный, но полностью повторяет эффект прозрачности, показанный в вашем примере. По сути, он полностью отбрасывает текстовый блок HTML и просто рисует весь шабанг на <canvas>
. Тем не менее, у него есть некоторые недостатки:
Кажется, холст не нравится
перенос текста, так что вам нужно будет указать
отдельные строки.
Текст на холсте может иметь несколько мутные реализации браузера.
Доступность и SEO, хотя вы могли бы легко написать плагин jQuery для преобразования обычных элементов DOM с текстом в это решение во время выполнения.