【发布时间】:2020-12-27 06:35:56
【问题描述】:
我正在尝试创建一个粘性导航栏,该导航栏在滚动背景时会做出反应。我尝试了mix-blend-mode: difference,这正是我正在寻找的。但由于我使用的是position: sticky 或position: fixed,所以会发生这种情况:
不幸的是,当它点击导航栏时,整个字体正在反转它的颜色。这是一个相互滚动时的示例:
在这个例子中,我使用了position: absolute,它看起来非常好。
这是我目前编写的代码:
HTML 和 CSS
.nav-bar {
width: calc(100vw - 3rem);
margin: 0 auto;
padding-top: 40px;
position: sticky;
top: 0;
}
.nav-bar ul {
display: flex;
justify-content: space-between;
top: 200px;
}
.nav-bar ul li {
list-style: none;
}
.nav-bar ul li img {
width: 30px;
}
.nav-bar ul li .line {
width: 25px;
height: 5px;
background: #000;
margin-bottom: 3px;
}
.nav-bar ul li .line:last-child {
margin-bottom: 0;
}
.headline-container {
padding-top: 100px;
}
.headline-container .headline-item {
width: calc(100vw - 3rem);
margin: 0 auto;
display: flex;
justify-content: space-between;
}
.headline-container .headline-item span {
font-size: 7vw;
font-family: 'Montserrat', sans-serif;
font-style: italic;
font-weight: bold;
mix-blend-mode: difference;
color: white;
}
<div class="nav-bar">
<nav>
<ul>
<li class="test">
<img src="./img/logo_nav.svg" alt="logo" />
</li>
<li>
<div class="line"></div>
<div class="line"></div>
<div class="line"></div>
</li>
</ul>
</nav>
</div>
<div class="headline-container">
<div class="headline-item">
<span>W</span>
<span>E</span>
<span>B</span>
<span>A</span>
<span>P</span>
<span>P</span>
<span>L</span>
<span>I</span>
<span>C</span>
<span>A</span>
<span>T</span>
<span>I</span>
<span>O</span>
<span>N</span>
</div>
<div class="headline-item">
<span>D</span>
<span>E</span>
<span>S</span>
<span>I</span>
<span>G</span>
<span>N</span>
</div>
<div class="headline-item">
<span>B</span>
<span>R</span>
<span>A</span>
<span>N</span>
<span>D</span>
<span>I</span>
<span>N</span>
<span>G</span>
</div>
<div class="headline-item">
<span>C</span>
<span>O</span>
<span>M</span>
<span>M</span>
<span>U</span>
<span>N</span>
<span>I</span>
<span>C</span>
<span>A</span>
<span>T</span>
<span>I</span>
<span>O</span>
<span>N</span>
</div>
</div>
【问题讨论】:
-
我只是想编辑您的帖子,使您的代码可以从帖子中运行。会带来更好的理解。不幸的是,有人已经发布了编辑,所以我无法完成更改。
标签: html css css-position mix-blend-mode