我正在寻找这个问题的解决方案:我有一个垂直导航,在这个导航中我使用的图标有不同的大小,但我通过使用不同的 ID 调整它们的大小来“修复”它。现在我想要对它们产生 :hover 效果。但是由于图标的大小不同,悬停不适合我的导航边框。我希望他们的行为是这样的:https://www.w3schools.com/w3css/tryw3css_templates_dark_portfolio.htm 有人可以帮我吗?
<nav class="hidden-mobile" id="menue">
<div class="navItem">
<img src="./img/home_website.png" class="icon" class="current" id="homeicon"><br>
<a class="icontitle" href="./fotowand.html">HOME</a>
<div class="after"></div>
</div>
<div class="navItem">
<img src="./img/studieninteressierte.png"class="icon"><br>
<a class="icontitle" href="">STUDIEN-<br>INTERESSIERTE</a>
<div class="after"></div>
</div>
<div class="navItem">
<img src="./img/studierende.png" class="icon" id="studierendeicon"><br>
<a class="icontitle" href="">STUDIERENDE</a>
<div class="after"></div>
</div>
<div class="navItem">
<img src="./img/unternehmen.png" class="icon" id="unternehmenicon"><br>
<a class="icontitle" href="">UNTERNEHMEN</a>
<div class="after"></div>
</div>
<div class="navItem">
<img src="./img/kontakt.png" class="icon"><br>
<a class="icontitle" href="">KONTAKT</a>
<div class="after"></div>
</div>
</nav>
这是我的CSS
.navItem {
text-align: center;
display: inline-block;
position: relative;
margin-right: 1em;
margin-bottom: 1em;
}
.icon {
width:80px;
}
.after {
position: absolute;
top: 0;
left: 0;
width:200px;
height: 100px;
display: none;
text-align: center;
color: white;
}
.navItem:hover .after {
background-color: rgba(0, 0, 0, .6);
display: block;
left:0px;
}
最佳答案
试试这个:
您需要删除您在
类之后指定的宽度和高度。
可以直接给
navItem
的:hover
附加的工作副本。
.navItem {
text-align: center;
display: inline-block;
position: relative;
margin-right: 1em;
margin-bottom: 1em;
}
.icon {
width:80px;
}
.after {
position: absolute;
top: 0;
left: 0;
display: none;
text-align: center;
color: white;
}
.navItem:hover {
background: rgba(0, 0, 0, .6);
}
<nav class="hidden-mobile" id="menue">
<div class="navItem">
<img src="./img/home_website.png" class="icon" class="current" id="homeicon"><br>
<a class="icontitle" href="./fotowand.html">HOME</a>
<div class="after"></div>
</div>
<div class="navItem">
<img src="./img/studieninteressierte.png"class="icon"><br>
<a class="icontitle" href="">STUDIEN-<br>INTERESSIERTE</a>
<div class="after"></div>
</div>
<div class="navItem">
<img src="./img/studierende.png" class="icon" id="studierendeicon"><br>
<a class="icontitle" href="">STUDIERENDE</a>
<div class="after"></div>
</div>
<div class="navItem">
<img src="./img/unternehmen.png" class="icon" id="unternehmenicon"><br>
<a class="icontitle" href="">UNTERNEHMEN</a>
<div class="after"></div>
</div>
<div class="navItem">
<img src="./img/kontakt.png" class="icon"><br>
<a class="icontitle" href="">KONTAKT</a>
<div class="after"></div>
</div>
</nav>
希望对您有所帮助。祝你好运!
关于css - 悬停不适合我的导航,因为每个图标都有不同的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47349349/