You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

实现动态文本的模糊白色背景(Tailwind CSS/纯CSS):解决滤镜模糊导致文本消失的问题

解决Tailwind CSS中模糊背景导致文本消失的问题

嘿,我来帮你搞定这个模糊背景的坑!你遇到的问题是因为filter blur会把容器内的所有内容(包括文本)都一起模糊,所以文本就被糊得看不见了。加上文本是动态的不能固定宽高,得换个思路实现。

这里有两个靠谱的解决方案,都能完美适配动态文本:

方案1:用backdrop-blur(最简单推荐)

Tailwind支持backdrop-blur类,它只模糊元素背后的区域,不会影响元素本身的内容。刚好符合你的需求,而且代码超级简洁:

<div class="inline-block px-1 bg-white bg-opacity-75 backdrop-blur-sm">
  <span class="font-bold text-black-dark text-sm leading-[17px] z-10">{{ dynamicText }}</span>
</div>
  • backdrop-blur-sm:给背景添加轻微模糊效果,你可以换成backdrop-blur(中等)或backdrop-blur-lg(更强)来调整模糊程度
  • inline-block:让容器自动适应动态文本的宽度,不用固定宽高
  • 注意:Tailwind里自定义行高要写成leading-[17px],而不是leading-17px;z-index不用设1003这么大,10就足够让文本在最上层了

方案2:伪元素实现模糊背景(兼容性更好)

如果需要兼容不支持backdrop-blur的旧浏览器,可以用绝对定位的元素单独做模糊背景,文本放在上面:

<div class="inline-block relative px-1">
  <span class="font-bold text-black-dark text-sm leading-[17px] relative z-10">{{ dynamicText }}</span>
  <div class="absolute inset-0 bg-white bg-opacity-75 blur-sm"></div>
</div>
  • relative的父容器:让内部绝对定位的背景元素能正确对齐
  • absolute inset-0:背景元素铺满整个父容器,自动跟随动态文本的大小
  • z-10:确保文本在模糊背景的上层,不会被遮挡

这两种方案都不用给容器设置固定宽高,完全适配动态文本的内容,你可以根据自己的需求选一个试试~

内容的提问来源于stack exchange,提问作者Alex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 13:12:28