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

CSS filter: blur(5px)未按预期生效原因咨询(不可调整DOM层级)

问题原因与解决方案

为什么filter: blur()不生效?

  • filter: blur() 仅对元素自身及其内部的内容生效。你的#filter是个空div,没有任何可模糊的内容,所以看不到效果。
  • 添加background-color: red后,这个div通过绝对定位铺满了整个视口,因此全屏显示红色。

解决方案(保持DOM层级不变)

要模糊上方的文本,需要使用backdrop-filter属性——它专门用来模糊元素后方的页面内容(也就是视觉上在这个div下面的p文本)。

修改后的CSS代码:

#filter {
  backdrop-filter: blur(5px); /* 替换原filter属性 */
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  /* 可选:加半透明背景增强模糊视觉效果 */
  background-color: rgba(255, 255, 255, 0.2);
}

说明:

  • backdrop-filter: blur(5px) 会模糊该div覆盖区域后方的所有内容,正好对应你要模糊的上方p文本。
  • 半透明背景是可选的,不加的话模糊效果也能生效,但加上后视觉上会更明显。

内容的提问来源于stack exchange,提问作者four-eyes

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 10:35:32