如何使用z-index将下拉内容放在最顶层?
P粉986860950
P粉986860950 2023-08-31 23:37:47
[CSS3讨论组]
<p>一个下拉式div元素,在移动视图中应该像这样工作,但在检查元素中却显示为移动视图。</p> <p>我试过改变几乎所有相关导航元素的CSS z-index样式,将这个元素保留在“z-index:121212 !important;”,但下拉式div仍然出现在所有其他导航链接的后面。</p> <p>有人知道为什么会发生这种情况吗?任何帮助将不胜感激。</p> <p>这是我的HTML代码和它的CSS:</p> <p> <pre class="brush:css;toolbar:false;"> .navbar-mobile .dropdown&gt;.dropdown-active { display: block; z-index: 121212; } .dropdown-content { display: none; position: absolute; background-color: var(--bg-dark); min-width: 200px; box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.2); z-index: 101000; animation: marketNav 0.5s; } .dropdown-content a { color: #fff; padding: 12px 16px; text-decoration: none; display: block; } .dropdown-content a:hover{ background-color: var(--main-color); color: #000 !important; } .dropdown-content a:hover{ color: #1F586B; } .dropdown:hover .dropdown-content{ display: inline-block; } .nav-pills.has-two .nav-item .nav-link.active { background-color: var(--main-color); color: #000; } .nav-link{ font-weight: 600 !important; letter-spacing: 0.8px; } @media screen and (min-width: 1024px) { .support-link{ margin-right: 10px!important; } .nav-link{ padding-left: 25px!important; } } .nav-pills.has-two .nav-item .nav-link { background-color: #000 !important; color: #fff; border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; -ms-border-radius: 0; -o-border-radius: 0; padding: 12px 20px; }</pre> <pre class="brush:html;toolbar:false;">&lt;!-- Navigation --&gt; &lt;header id="header" class="fixed-top "&gt; &lt;div class="container d-flex align-items-center justify-content-lg-between"&gt; &lt;div class="logo me-auto me-lg-0"&gt; &lt;a href="index.htm"&gt; &lt;span&gt; &lt;img class="img-fluid rounded sm-device-img text-align" src="asset/theme1/images/logo/logo.svg" width="100%" alt="pp"&gt; &lt;/span&gt; &lt;/a&gt; &lt;/div&gt; &lt;nav id="navbar" class="navbar order-last order-lg-0"&gt; &lt;ul&gt; &lt;li class="active"&gt; &lt;a class="nav-link" href="index.htm"&gt;Home&lt;/a&gt; &lt;/li&gt; &lt;li class="nav-item"&gt; &lt;div class="dropdown"&gt; &lt;a class="dropbtn nav-link"&gt;Market&lt;/a&gt; &lt;div class="dropdown-content"&gt; &lt;a href=""&gt;Forex&lt;/a&gt; &lt;a href=""&gt;Cryptocurrencies&lt;/a&gt; &lt;a href=""&gt;Indices&lt;/a&gt; &lt;a href=""&gt;Stocks&lt;/a&gt; &lt;a href=""&gt;Commodities&lt;/a&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="mobile-view marketNav"&gt; &lt;a href=""&gt;Forex&lt;/a&gt; &lt;a href=""&gt;Cryptocurrencies&lt;/a&gt; &lt;a href=""&gt;Indices&lt;/a&gt; &lt;a href=""&gt;Stocks&lt;/a&gt; &lt;a href=""&gt;Commodities&lt;/a&gt; &lt;/div&gt; &lt;/li&gt; &lt;li class="nav-item"&gt; &lt;div class="dropdown"&gt; &lt;a class="dropbtn nav-link"&gt;Trading&lt;/a&gt; &lt;div class="dropdown-content"&gt; &lt;a href=""&gt;Trading Platforms&lt;/a&gt; &lt;a href=""&gt;Tools&lt;/a&gt; &lt;a href=""&gt;Education&lt;/a&gt; &lt;a href=""&gt;benefits&lt;/a&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="mobile-view marketNav"&gt; &lt;a class="sub-nav-link" href=""&gt;Trading Platforms&lt;/a&gt; &lt;a class="sub-nav-link" href=""&gt;Tools&lt;/a&gt; &lt;a class="sub-nav-link" href=""&gt;Education&lt;/a&gt; &lt;a class="sub-nav-link" href=""&gt;benefits&lt;/a&gt; &lt;/div&gt; &lt;/li&gt; &lt;li&gt; &lt;a class="nav-link" href=""&gt;Account Types&lt;/a&gt; &lt;/li&gt; &lt;li&gt; &lt;a class="nav-link" href=""&gt;About&lt;/a&gt; &lt;/li&gt; &lt;li&gt; &lt;a class="nav-link" href=""&gt;Contact&lt;/a&gt; &lt;/li&gt; &lt;li class="d-md-block d-lg-none d-block "&gt; &lt;a class="nav-link" href=""&gt;Login&lt;/a&gt; &lt;a class="btn-border-inverse col-12 btn-sm me-3" href=""&gt;Register&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt; &lt;i class="bi bi-list mobile-nav-toggle"&gt;&lt;/i&gt; &lt;/nav&gt; &lt;div class="header-right d-flex d-none d-md-none d-lg-block"&gt; &lt;a href="" class="btn-border btn-sm me-3"&gt;Login&lt;/a&gt; &lt;a href="" class="btn-border-inverse btn-sm me-3"&gt;Register&lt;/a&gt; &lt;/div&gt; &lt;/div&gt; &lt;/header&gt; &lt;!-- Navigation Ends --&gt;</pre> </p> <p><strong>编辑:</strong>我找到了解决这个问题的方法。当链接位于主要的“nav-links”后面时,它们无法被点击。所以我添加了一些高度的空白div,以出现在下拉式内容将出现的nav-link下方,借助一些JS和CSS使其在较大的屏幕上隐藏。现在我可以点击“dropdown-content”中的链接了。</p>
P粉986860950
P粉986860950

全部回复(1)
P粉982881583

问题不在于 z-index,而在于背景颜色。它是透明的,所以看起来好像在其他文本的后面。你应该在代码中设置你使用的变量:

:root {
  --bg-dark: #000;
  --main-color: #fff;
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号