如何以渐变方式将背景图像淡化为透明?
How to fade a background image to transparent, in a gradient fashion?
我身上有一个 background-image
,设置为重复,因此无论页面长度如何,它都像无限背景一样覆盖整个页面。
我希望在首次加载页面时淡出以在 window 一半左右显示默认背景(纯白色),因此它更像是横幅背景。
我发现以前的问题是这样的:Fade image to transparent like a gradient 详细说明了如何淡化位于其他内容后面的 img
元素。
但我特别想问的是如何淡化应用了 CSS 的 background-image
,而不是 img
元素。这可能吗?
这是我想要的效果示例(通过直接在图像处理软件中编辑图像来完成):https://travamigos.com/about-us/
这对于 CSS 是不可能的,因为它代表背景 图像 不受 opacity
的影响。
但是,您可以用不透明度的背景渐变覆盖 bg-image 背景,但它必须以明确的颜色结束,在您的情况下 white
。
body {
min-height: 100vh;
background-image: linear-gradient(transparent, white 75%), url(http://www.fillmurray.com/460/300);
}
我身上有一个 background-image
,设置为重复,因此无论页面长度如何,它都像无限背景一样覆盖整个页面。
我希望在首次加载页面时淡出以在 window 一半左右显示默认背景(纯白色),因此它更像是横幅背景。
我发现以前的问题是这样的:Fade image to transparent like a gradient 详细说明了如何淡化位于其他内容后面的 img
元素。
但我特别想问的是如何淡化应用了 CSS 的 background-image
,而不是 img
元素。这可能吗?
这是我想要的效果示例(通过直接在图像处理软件中编辑图像来完成):https://travamigos.com/about-us/
这对于 CSS 是不可能的,因为它代表背景 图像 不受 opacity
的影响。
但是,您可以用不透明度的背景渐变覆盖 bg-image 背景,但它必须以明确的颜色结束,在您的情况下 white
。
body {
min-height: 100vh;
background-image: linear-gradient(transparent, white 75%), url(http://www.fillmurray.com/460/300);
}