代码如下:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
<title>公共页面 - 置顶导航</title>
<!-- Bootstrap -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css" rel="stylesheet">
<style>
body{
font-family: Arial;
font-size: 12px;
color: #999999
}
.redColor{
color: #C40000 !important;
}
a{
color: #999999;
}
nav.top span,nav.top a{
color: #999999;
margin: 0px 10px;
}
a:hover{
color: #C40000;
text-decoration: none;
}
/*nav.top a:hover{*/
/*color: #C40000;*/
/*text-decoration: none;*/
/*}*/
</style>
<!-- HTML5 shim 和 Respond.js 是为了让 IE8 支持 HTML5 元素和媒体查询(media queries)功能 -->
<!-- 警告:通过 file:// 协议(就是直接将 html 页面拖拽到浏览器中)访问页面时 Respond.js 不起作用 -->
<!--[if lt IE 9]>
<script src="https://cdn.jsdelivr.net/npm/html5shiv@3.7.3/dist/html5shiv.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/respond.js@1.4.2/dest/respond.min.js"></script>
<![endif]-->
</head>
<body>
<nav class="top">
<a href="">
<span class="glyphicon glyphicon-home redColor"></span>
天猫首页
</a>
喵,欢迎来天猫
<a href="">请登录</a>
<a href="">免费注册</a>
<span class="pull-right">
<a href="">我的订单</a>
<a href="">
<span class=" glyphicon glyphicon-shopping-cart redColor" ></span>
购物车<strong>0</strong>件
</a>
</span>
</nav>
<!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery,所以必须放在前边) -->
<script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js"></script>
<!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/js/bootstrap.min.js"></script>
</body>
</html>
问题代码是这里:
其中:
这一段代码无法起作用,
除非改成这样才行:
nav.top a:hover{
color: #C40000;
text-decoration: none;
}
不然鼠标移动上去的时候,没有任何效果,请问这到底是怎么回事呢?
用开发工具检查,也没有找到这个a:hover的选择器,奇怪了。
这个其实涉及到css选择器的权重和优先级的问题了
详细可以看这个了解下 https://www.w3cplus.com/css/c...
问题在于你 这里的选择器优先级高于裸写a标签的时候 所以里面的color优先级更高并不会因为被hover所操纵