大家好,我试图在这个悬停中保持白色,但是我无法做到这一点?当我将光标移动到元素内的下一个元素时,悬停字体会发生变化它的颜色,我一直在做许多不同的方法来保持我想要的颜色,但它似乎没有用,有些帮助请。 我展示了这张照片中发生的事情,我将不胜感激。 https://ibb.co/nDLQ7w https://ibb.co/j5NBfG 对不起我的英语我来自日本。
@import url('https://fonts.googleapis.com/css?family=Spectral+SC');
* {
box-sizing: border-box;
padding: 0;
margin: 0;
}
html {
font-size: 22px;
line-height: 32px;
background-color: #212121;
color: #555;
word-wrap: break-word;
font-family: 'Spectral sc', sans-serif;
}
h1 {
font-size: 60px;
line-height: 70px;
color: #fff;
margin-top: 100px;
text-align: center;
}
h3 {
font-size: 30px;
line-height: 34px;
color: #fff;
text-align: center;
}
p {text-align: center;}
nav {
padding: 0;
margin: 0;
background-color: #fff;
}
nav:after {
content: " ";
display: table;
clear: both;
}
nav ul {
float: right;
padding: 0;
margin: 0;
list-style: none;
}
nav ul li {
float: left;
display: inline-block;
margin: 0;
background-color: #fff;
}
nav a {
display: block;
padding: 10px 20px;
color: #555;
font-size: 20px;
line-height: 60px;
text-decoration: none;
}
.icon {
color: #fff;
font-size: 25px;
}
.toggle, [id^=drop] {display: none;}
nav ul li ul li:hover {background-color: #000;}
nav a:hover {
color: #fff;
background-color: #000;}
nav ul ul {
display: none;
position: absolute;
top: 80px;
}
nav ul li:hover > ul {display: inherit;}
nav ul ul li {
width: 170px;
float: none;
display: list-item;
position: relative;
}
nav ul ul ul li {
position: relative;
}
.logo {
height: 70px;
width: auto;
margin: 5px 15px;
float: left;
}
.container {
display: inline-block;
cursor: pointer;
}
.bar1, .bar2, .bar3 {
width: 35px;
height: 5px;
background-color: #fff;
margin: 6px 0;
transition: 0.4s;
border-radius: 5px;
}
.toggle-nav {display: none;}
.change .bar1 {
-webkit-transform: rotate(-45deg) translate(-9px, 6px);
transform: rotate(-45deg) translate(-9px, 6px);
}
.change .bar2 {opacity: 0;}
.change .bar3 {
-webkit-transform: rotate(45deg) translate(-8px, -8px);
transform: rotate(45deg) translate(-8px, -8px);
}
@media all and (max-width : 767px) {
nav {margin: 0;}
nav ul{float: left;clear:both;}
.toggle + a, .menu {display: none;}
.toggle {
display: block;
background-color: #254441;
padding: 10px 20px;
color: #fff;
font-size: 20px;
line-height: 60px;
text-decoration: none;
border: none;
}
.toggle-nav {
display: block;
margin-top: 20px;
margin-right: 25px;
color: #fff;
}
.toggle:hover {background-color: #000;}
[id^=drop]:checked + ul {display: block;}
.logo {
left: 50%;
position: relative;
transform: translateX(-50%);
}
nav ul li {
display: block;
width: 100%;
}
nav ul {
width: 100%;
}
nav ul ul .toggle,
nav ul ul a {padding: 0 40px;}
nav ul ul ul a {padding: 0 80px;}
nav a:hover,
nav ul ul ul a {background-color: #000;}
nav ul li ul li .toggle,
nav ul ul a {background-color: #212121;}
nav ul ul {
float: none;
position: static;
color: #fff;
}
nav ul ul li:hover > ul,
nav ul li:hover > ul {display: none;}
nav ul ul li {
display: block;
width: 100%;
}
nav ul ul ul li {position: static;}
}
@media all and (max-width : 330px) {
nav ul li {
display: block;
width: 94%;
}
}

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="https://fonts.googleapis.com/css?family=Lato:100,300,400" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="resources/css/grid.css">
<link rel="stylesheet" type="text/css" href="resources/css/ionicons.min.css">
<link rel="stylesheet" type="text/css" href="resources/css/normalize.css">
<link rel="stylesheet" type="text/css" href="resources/css/style.css">
<link rel="stylesheet" type="text/css" href="resources/css/queries.css">
<title>Web title</title>
</head>
<body>
<nav>
<img src="https://upload.wikimedia.org/wikipedia/commons/a/ab/Logo_TV_2015.png" class="logo">
<label for="drop" class="toggle-nav" style="float: right;"><div class="container" onclick="myFunction(this)">
<div class="bar1"></div>
<div class="bar2"></div>
<div class="bar3"></div>
</div></label>
<input type="checkbox" id="drop">
<ul class="menu">
<li><a href="#">Home</a></li>
<li>
<label for="drop-1" class="toggle"">Services +</label>
<a href="#">Services +</a>
<input type="checkbox" id="drop-1">
<ul>
<li><a href="#">Service 1</a></li>
<li><a href="#">Service 2</a></li>
<li><a href="#">Service 3</a></li>
</ul>
</li>
<li>
<label for="drop-2" class="toggle"">Portfolio +</label>
<a href="#">Portfolio +</a>
<input type="checkbox" id="drop-2">
<ul>
<li><a href="#">Service 1</a></li>
<li><a href="#">Service 2</a></li>
<li><a href="#">Service 3</a></li>
<li>
<label for="drop-3" class="toggle"">Port +</label>
<a href="#">Port+</a>
<input type="checkbox" id="drop-3">
<ul>
<li><a href="#">Service 1</a></li>
<li><a href="#">Service 2</a></li>
<li><a href="#">Service 3</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#">Service 1</a></li>
</ul>
</nav>
</body>
<script>
function myFunction(x) {
x.classList.toggle("change");
}
</script>
</html>
&#13;
答案 0 :(得分:0)
添加此CSS,可能会对您有所帮助
ul li a, ul li a:hover, ul li a:active{
color:#fff !important;
}
&#13;
答案 1 :(得分:0)
nav ul ul li a:hover {background-color:#fff;颜色:#ccc;}
答案 2 :(得分:0)
考虑将:hover
伪状态添加到包含列表项(li
)而不是锚元素({{1 }})本身,并使用子组合器(a
) Ref 选择器来定位直接嵌套的锚元素(以便不是所有锚点)嵌套在给定列表项中的元素受到影响),例如:
>
这样,当光标离开具有嵌套下拉菜单的列表项的锚元素时,由于光标仍然悬停在包含列表项上,因此声明的规则仍将适用。
代码段示范:
展开“整页”
nav li:hover > a {
color: #fff;
background-color: #000;
}
@import url('https://fonts.googleapis.com/css?family=Spectral+SC');
* {
box-sizing: border-box;
padding: 0;
margin: 0;
}
html {
font-size: 22px;
line-height: 32px;
background-color: #212121;
color: #555;
word-wrap: break-word;
font-family: 'Spectral sc', sans-serif;
}
h1 {
font-size: 60px;
line-height: 70px;
color: #fff;
margin-top: 100px;
text-align: center;
}
h3 {
font-size: 30px;
line-height: 34px;
color: #fff;
text-align: center;
}
p {text-align: center;}
nav {
padding: 0;
margin: 0;
background-color: #fff;
}
nav:after {
content: " ";
display: table;
clear: both;
}
nav ul {
float: right;
padding: 0;
margin: 0;
list-style: none;
}
nav ul li {
float: left;
display: inline-block;
margin: 0;
background-color: #fff;
}
nav a {
display: block;
padding: 10px 20px;
color: #555;
font-size: 20px;
line-height: 60px;
text-decoration: none;
}
.icon {
color: #fff;
font-size: 25px;
}
.toggle, [id^=drop] {display: none;}
nav ul li ul li:hover {background-color: #000;}
/* Modified */
nav li:hover > a {
color: #fff;
background-color: #000;
}
nav ul ul {
display: none;
position: absolute;
top: 80px;
}
nav ul li:hover > ul {display: inherit;}
nav ul ul li {
width: 170px;
float: none;
display: list-item;
position: relative;
}
nav ul ul ul li {
position: relative;
}
.logo {
height: 70px;
width: auto;
margin: 5px 15px;
float: left;
}
.container {
display: inline-block;
cursor: pointer;
}
.bar1, .bar2, .bar3 {
width: 35px;
height: 5px;
background-color: #fff;
margin: 6px 0;
transition: 0.4s;
border-radius: 5px;
}
.toggle-nav {display: none;}
.change .bar1 {
-webkit-transform: rotate(-45deg) translate(-9px, 6px);
transform: rotate(-45deg) translate(-9px, 6px);
}
.change .bar2 {opacity: 0;}
.change .bar3 {
-webkit-transform: rotate(45deg) translate(-8px, -8px);
transform: rotate(45deg) translate(-8px, -8px);
}
@media all and (max-width : 767px) {
nav {margin: 0;}
nav ul{float: left;clear:both;}
.toggle + a, .menu {display: none;}
.toggle {
display: block;
background-color: #254441;
padding: 10px 20px;
color: #fff;
font-size: 20px;
line-height: 60px;
text-decoration: none;
border: none;
}
.toggle-nav {
display: block;
margin-top: 20px;
margin-right: 25px;
color: #fff;
}
.toggle:hover {background-color: #000;}
[id^=drop]:checked + ul {display: block;}
.logo {
left: 50%;
position: relative;
transform: translateX(-50%);
}
nav ul li {
display: block;
width: 100%;
}
nav ul {
width: 100%;
}
nav ul ul .toggle,
nav ul ul a {padding: 0 40px;}
nav ul ul ul a {padding: 0 80px;}
nav a:hover,
nav ul ul ul a {background-color: #000;}
nav ul li ul li .toggle,
nav ul ul a {background-color: #212121;}
nav ul ul {
float: none;
position: static;
color: #fff;
}
nav ul ul li:hover > ul,
nav ul li:hover > ul {display: none;}
nav ul ul li {
display: block;
width: 100%;
}
nav ul ul ul li {position: static;}
}
@media all and (max-width : 330px) {
nav ul li {
display: block;
width: 94%;
}
}
注意:检查<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="https://fonts.googleapis.com/css?family=Lato:100,300,400" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="resources/css/grid.css">
<link rel="stylesheet" type="text/css" href="resources/css/ionicons.min.css">
<link rel="stylesheet" type="text/css" href="resources/css/normalize.css">
<link rel="stylesheet" type="text/css" href="resources/css/style.css">
<link rel="stylesheet" type="text/css" href="resources/css/queries.css">
<title>Web title</title>
</head>
<body>
<nav>
<img src="https://upload.wikimedia.org/wikipedia/commons/a/ab/Logo_TV_2015.png" class="logo">
<label for="drop" class="toggle-nav" style="float: right;"><div class="container" onclick="myFunction(this)">
<div class="bar1"></div>
<div class="bar2"></div>
<div class="bar3"></div>
</div></label>
<input type="checkbox" id="drop">
<ul class="menu">
<li><a href="#">Home</a></li>
<li>
<label for="drop-1" class="toggle">Services +</label>
<a href="#">Services +</a>
<input type="checkbox" id="drop-1">
<ul>
<li><a href="#">Service 1</a></li>
<li><a href="#">Service 2</a></li>
<li><a href="#">Service 3</a></li>
</ul>
</li>
<li>
<label for="drop-2" class="toggle">Portfolio +</label>
<a href="#">Portfolio +</a>
<input type="checkbox" id="drop-2">
<ul>
<li><a href="#">Service 1</a></li>
<li><a href="#">Service 2</a></li>
<li><a href="#">Service 3</a></li>
<li>
<label for="drop-3" class="toggle">Port +</label>
<a href="#">Port+</a>
<input type="checkbox" id="drop-3">
<ul>
<li><a href="#">Service 1</a></li>
<li><a href="#">Service 2</a></li>
<li><a href="#">Service 3</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#">Service 1</a></li>
</ul>
</nav>
</body>
<script>
function myFunction(x) {
x.classList.toggle("change");
}
</script>
</html>
元素上的标记,其中类label
以双重结束撇号终止。