gpt4 book ai didi

javascript - 由于溢出属性,CSS 下拉列表未显示

转载 作者:行者123 更新时间:2023-11-28 05:38:08 25 4
gpt4 key购买 nike

我现在正在制作一个 Angular/Rails 应用程序。我在屏幕顶部配置了一个标题,并在 img 上放置了一个下拉功能。我基本上想为用户信息制作下拉菜单。就像谷歌中的一个。由于 page-header CSS 属性中的 overflow: auto,下拉列表未显示。但是,我不能删除该属性,因为如果我删除它,它会杀死 header 上的 CSS。如何仅针对 dropdown CSS 覆盖它?

这是我的代码:

<header class="page-header page-header--fixed">
<a href="/" class="page-header-logo"><img src="/assets/logo-green.svg" alt="logo"></a>

<div class="dropdown">
<img src="/assets/user_icon.svg" alt="User" onclick="myFunction()">
<div id="myDropdown" class="dropdown-content">
<a href="#home">Home</a>
<a href="#about">About</a>
<a href="#contact">Contact</a>
</div>
</div>
</header>

CSS

.page-header {
overflow: auto;
/*height:50px;*/
padding: 8px 20px;
background-color: #07b1d1;
box-shadow: 0 3px 17px 0 rgba(0, 0, 0, 0.1);
}

.page-header--fixed {
position: relative;
width: 100%;
left: 0;
top: 0;
z-index: 100;
border-top: 0;
background-color: white;
}

.dropdown {
float: right;
position: relative;
display: inline-block;
}

.dropdown-content {
z-index: 200;
display: none;
position: absolute;
background-color: #F5F8F9;
min-width: 160px;
overflow: auto;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
right: 0;
}

.dropdown-content a {
color: black;
padding: 12px 16px;
text-decoration: none;
display: block;
}

.dropdown a:hover {background-color: #f1f1f1}

.show {display:block;}

Javascript:

function myFunction() {
document.getElementById("myDropdown").classList.toggle("show");
}

// Close the dropdown if the user clicks outside of it
window.onclick = function(event) {
if (!event.target.matches('.dropbtn')) {

var dropdowns = document.getElementsByClassName("dropdown-content");
var i;
for (i = 0; i < dropdowns.length; i++) {
var openDropdown = dropdowns[i];
if (openDropdown.classList.contains('show')) {
openDropdown.classList.remove('show');
}
}
}
}

最佳答案

试试这个:

var x= document.getElementsByClassName("dropdown-content");
x.style.overflow= "auto";

关于javascript - 由于溢出属性,CSS 下拉列表未显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38070559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com