【发布时间】:2023-03-20 21:35:01
【问题描述】:
我知道有 400 个这样的线程,但似乎每个人的代码都有些不同:我设置了我的 CSS,每次您将鼠标悬停在导航中的页面上时都会出现一个蓝条,并且单击该链接页面时,蓝条将停留在其上方。当我单击带有下拉菜单的链接之一时,我无法让它停留在父页面上。我可以让一个蓝色条出现在下拉列表中(大声笑),但根本无法让它留在父母身边。我已经尝试了所有祖先的技巧,所有的菜单当前技巧,我只是束手无策。如果有任何帮助,我将永远感激不尽。
/*** ----------------------------CHANGE THE COLOR OF THE SQUARES UNDERNEATH THE NAVIGATION BAR HERE ------------------------------- ***/
nav ul li a:hover, nav ul li a.current {
border-bottom: 5px solid #00BCF2;
color: #00BCF2;
}
/*** THIS WILL PROBABILY GET US TO WHERE WE WANT TO BE WITH ADDING AND HOVERING THE PARENT LINK
nav ul li:hover > a, .current-menu-ancestor > a, .current-menu-parent > a {
background-color: #536f9e !important;
color: #ffffff !important;
}
***/
/*** add publications from box site level 1 here ***/
/**** Dropdown ****/
/*** ----------------------------- CHANGE THE LOGO OF THE DROPDOWN ARROW ------------------------------ ***/
/*** ----------------------------- CHANGE THE height OF THE DROPDOWN menu ------------------------------ ***/
.dropdown{
padding: 14px 16px 37px 10px;
background: url('images/dropdown_icon.png') no-repeat 99% 21px;
}
.dropdown:hover{
border-bottom: none;
}
nav ul ul{
display: none;
margin: 0;
position: absolute;
background-color: #000;
z-index: 1;
}
nav ul li:hover ul{
display: block;
opacity: 0.9;
}
nav ul li ul li{
margin: 0;
}
/*** ----------------------------- CHANGE THE WIDTH OF THE DROPDOWN MENU ------------------------------ ***/
nav ul li ul li a{
margin: 0;
padding: 5px 10px;
width: 100px;
}
/*** ----------------------------- CREATE BLUE BARS INSIDE OF DROPDOWN ------------------------------ ***/
nav ul li:hover ul li a:hover, nav ul li:hover ul li a.current{
border-bottom: none;
}
根据要求,我开头的 HTML --> 标题是:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>XXXXXX</title>
<link rel="stylesheet" href="style.css" type="text/css" media="screen, projection" />
<script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script>
$(function(){
$('a').each(function() {
if ($(this).prop('href') == window.location.href) {
$(this).addClass('current');
}
<!--END OF HEADER -->
});
});
</script>
</head>
<body>
<div id="wrapper">
<!--========================== L O G O & N A V B A R ============================-->
<header>
<div id="logo">
<a href="home.html"><img src="images/xylophone.png" alt="YouRock" /></a>
</div>
<nav>
<ul>
<li><a href="home.html">Home</a></li>
<li><a href="about.html">About</a></li>
<li><a href="portfolio.html">Founders</a></li>
<li><a href="#" class="dropdown">Pipeline</a>
<ul>
<ul>
<li><a href="timeline.html">Timeline</a></li>
<li><a href="Phases.html">Phase I / II</a></li>
【问题讨论】:
-
只是让我明白了,您希望当前页面在菜单项下有一个蓝条吗?
-
确实如此。到目前为止,我的理解是,当悬停下拉列表的 li 时(例如 Timeline),您希望在父下拉类(例如 Pipeline)上显示蓝条。您能否确认这是预期的行为?
-
@PIIANTOM 不是在悬停该个人时,而是在单击链接时。因此,当单击主页、关于、投资组合等时,我的蓝色条将停留在它们下方。当我点击下拉列表中的链接时,我希望“管道”具有相同的蓝色下划线
标签: html css drop-down-menu navbar dropdown