如何用css实现鼠标移入时与鼠标移出时颜色相同,不使用js,,,急用,谢谢啊!

<div><ulclass="nav"><li><ahref="#">菜单一</a></li><li><ahref="#">菜单二</a></li><li><ahref=... <div>

<ul class="nav">
<li><a href="#">菜单一</a></li>
<li><a href="#">菜单二</a></li>
<li><a href="#">菜单三</a></li>
</ul>
</div>

假如鼠标没有移入时,菜单背景为红色,,鼠标移入时变成蓝色,移出时也一直为蓝色,,不使用js ,只用css实现,求高手帮忙,谢谢!
展开
 我来答
刺友互
高粉答主

2020-04-09 · 每个回答都超有意思的
知道答主
回答量:3979
采纳率:100%
帮助的人:73.2万
展开全部

1、新建一个html文件,命名为test.html。

2、在test.html文件中,使用div标签创建一个模块,并设置其id属性为tid,下面将通过该id设置其css样式。

3、在css标签内,对div进行样式设置,使用width属性设置div的宽度为200px,使用height属性设置div的宽度为20px,使用background属性设置div的背景颜色为红色。

4、在css标签内,再定义一个类名为newbg的样式,使用background属性设置背景颜色为黄色。

5、在test.html文件中,给div绑定onmouseover鼠标移动事件,当鼠标移动至div时,执行myfun()函数。

6、在test.html文件中,在js标签内,创建一个myfun()函数,在函数内,使用getElementById()获得div对象,通过className(newbg)设置div的新背景颜色。

menglexing
2013-07-16
知道答主
回答量:29
采纳率:0%
帮助的人:17.4万
展开全部
菜单背景为红色,,鼠标移入时变成蓝色,移出时也一直为蓝色 纯CSS是不可能是实现的
追问
那使用js怎么实现呢?
追答
给 ul 加 id=“js-nav” ,js代码:(置于前)

(function(){
var nav = document.getElementById("js-nav");
nav.getElementsByTagName("a").onmouseover = function(){
this.style.backgroundColor="#99cc66";
}
})();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
风痕千里
2013-07-17 · TA获得超过113个赞
知道小有建树答主
回答量:160
采纳率:0%
帮助的人:95.9万
展开全部
你一开始是红色的,移入是蓝色的,移出是蓝的。这个好像要用js吧。要是移出也是红色的就好做了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
doit26
2017-07-11 · TA获得超过309个赞
知道小有建树答主
回答量:192
采纳率:68%
帮助的人:24.5万
展开全部
不用js好像不能实现吧,鼠标就下面几种状态了
link,正常状态
visited,鼠标点击后再次停留在上面的状态
hover,鼠标经过的状态
active 按下鼠标时的状态
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-07-17
展开全部
显然你这个效果普通css是无法达到这个效果的,如果在a上加hover事件。那A移开后也会恢复原来的颜色,并不能达到你移开不变色的效果。这个时候就需要css里的另外一种方法来做了,那就是css里的expression表达式,但是并不建议用这个,因为这个比较卡浏览器。而且只有IE支持。所以还是放弃不用JS来实现的念头吧。
追问
请问使用js怎么实现?
追答
<style type="text/css">
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,p,blockquote,th,td{margin:0;padding:0;}
ul li{list-style-type:none;}
.nav{ height:35px; line-height:35px; background-color:#ff0000;}
.nav li{ float:left; margin-right:1px; height:35px;}
.nav li a{ padding:0 15px; display:block;}
</style>
<ul class="nav">
  <li><a href="#" onmouseover="this.style.backgroundColor='#0000ff';this.style.color='#fff'">菜单一</a></li>
  <li><a href="#" onmouseover="this.style.backgroundColor='#0000ff';this.style.color='#fff'">菜单二</a></li>
  <li><a href="#" onmouseover="this.style.backgroundColor='#0000ff';this.style.color='#fff'">菜单三</a></li>
 </ul>

简单点就象这样写在a里面,试试吧

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式