我想让固定文本根据其背后的确切背景颜色逐个像素地更改其颜色。可以吗?In the given example, part of the text on the blue background would be white如果显示文本的形状的边缘与水平/垂直边缘不同,可以吗?
我尝试使用JQuery来定位页面上的特定元素,因为我知道scroll函数只允许定位滚动位置,所以只能定位水平元素,文本将整体改变颜色,而不是逐个像素地改变颜色,这将是我的目标,因为我计划添加自定义形状的背景,它将使文本在过渡位置也可读,正如示例所示。即使这样也不起作用,可能是由于一些CSS问题。这里有一种在CSS中做这件事的方法吗?
$(window).scroll(function() {
var scroll = $(window).scrollTop();
if (scroll <= $('.fp-container-1').offset().bottom) {
$('nav-button').css('color', 'black');
}
if (scroll >= $('.fp-container-2').offset().top) {
$('nav-button').css('color', 'white');
}
});
.fp-container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100vh;
width: 100vw;
}
.fp-container-1 {
background-color: rgb(255, 255, 255);
}
.fp-container-2 {
display: block;
background-color: rgb(70, 67, 226);
height: 150vh;
}
2条答案
按热度按时间iszxjhcz1#
svdrlsy42#
您可以通过使用CSS3 filter属性来实现这一点。
语法为: