为了账号安全,请及时绑定邮箱和手机立即绑定

导航条菜单的制作

江老实 Web前端工程师
难度初级
时长23分
学习人数
综合评分9.53
1004人评价 查看评价
9.8 内容实用
9.4 简洁易懂
9.4 逻辑清晰
  • 1.jS(原生代码)实现:动画开始前先清除一下定时器,避免动画累加。 window.onload=function (){ var aA=document.getElementByTagName('a'); for(var i=0;i<aA.length;i++){ aA[i].onmouseover=function (){ clearInterval(This.time); var This=this; /*把当前的this对象传进来*/ This.time=setInterval(function (){ This.style.width=This.offsetWidth+8+"px"; /*8是变宽的速度*/ if(This.offsetWidth>=160){ clearInterval(This.time); } },30); } aA[i].onmouseout=function (){ clearInterval(This.time); var This=this; This.time=setInterval(function (){ This.style.width=This.offsetWidth-8+"px"; if(This.offsetWidth<=120){ This.style.width="120px"; clearInterval(This.time); } },30); } } }; 2.jQuery实现:动画打开时,先把上一个动画清理掉(使用stop方法)。 $(function(){ $('a').hover( function(){ $(this).stop().animate({"width":"160px"}.200); } function(){ $(this).stop().animate({"width":"120px"}.200); } )) })
    查看全部
  • 菜单<li>浮动后,<li>脱离文档流,导致<ul>将失去高度和宽度;如果需要对<ul>进行整体背景设置,首先要给<ul>定义宽、高。
    查看全部
    0 采集 收起 来源:练习题

    2018-03-22

  • jquery 下 stop()方法结束上一个动画
    查看全部
  • 1.设置margin-top负值,而不是直接设置margin-bottom,是因为相对初始位置不变。【通用】 2.设置line-height,是因为之前的文字height为30px,现在容器height为40px,文字height没变,默认靠上,为了使文字居中改变行高。【特殊】
    查看全部
    0 采集 收起 来源:编程练习

    2016-04-05

  • 伸缩导航条的制作 将圆角导航条上修改成伸缩导航条! 去挑圆角贴图,给.on,a:hover加会原来的背景颜色。 把a标签的背景图片删掉,给.on,a:hover添加 高度,“重点”:margin可以用负值,相反方向移动。 通过改变<a>标签的margin值,实现菜单项【向上增高】,同时让文字垂直居中。
    查看全部
  • 背景图片沿y轴向上移动30px(水平方向不动) background-position:0 -30px;
    查看全部
    0 采集 收起 来源:编程练习

    2016-04-05

  • 菜单<li>浮动后,<li>脱离文档流,导致<ul>将失去高度和宽度;如果需要对<ul>进行整体背景设置,首先要给<ul>定义宽、高。
    查看全部
    0 采集 收起 来源:练习题

    2018-03-22

  • 1.圆角菜单的制作,通过设置背景,改变外观样式。 通过a:hover,可以为菜单增加交互效果。 2.横向菜单与圆角菜单的却别是:为ul增加一个 装饰线 border-bottom、为a标签添加圆角背景,宽与高相适应、有一个默认的选中状态,所以要为a标签加上一个class"on" 在为它的样式添加上一个on,最后移动它的位置(y,x) 圆角菜单:border-radius; /* CSS */ background-image:url(); /* 插入图片 */ background-position: /* 图片定位 */
    查看全部
  • 设置水平菜单导航栏 在垂直菜单导航栏样式基础上修改: 1、设置li为左浮动 2、将ul限制宽度去掉 3、设置文本居中,text-align:center,将之前的text-indent(文本缩进)属性删掉
    查看全部
    0 采集 收起 来源:编程练习

    2016-04-05

  • 垂直菜单转变成水平菜单 float:left, 文本居中 text-align:center
    查看全部
    0 采集 收起 来源:练习题

    2016-04-05

  • 设置水平菜单导航栏 在垂直菜单导航栏样式基础上修改: 1、设置li为左浮动float:left 2、将ul限制宽度去掉 3、设置文本居中,text-align:center,将之前的text-indent(文本缩进)属性删掉
    查看全部
  • text-indent:文字缩进
    查看全部
    0 采集 收起 来源:编程练习

    2016-04-05

  • 无序列表,一般使用ul/li来制作菜单导航条
    查看全部
    0 采集 收起 来源:练习题

    2016-04-05

  • 1.用ul无序列列表构建菜单 2.清除默认样式 *{margin:0;padding:0;} 清除ul的样式 ul{list-style:none},能去掉前面的默认小圆点 去掉a标签的下划线 a{text-decoration:none} 在导航栏中经常用 height: 30px;line-height: 30px;可使文字垂直居中。 3.如果用为文字前面增加像素,最好用缩进的方式来实现 {text-indent:xx px}(文本缩进,用text-indent替换padding-left,是为了防止菜单长度增加。例如:padding-left:10px; 会导致宽度也增加10px ) 4.ul li a{}因为a标签是最内部的元素 所以对a标签设置就可以了 又因为a为内联元素,而块状元素才可以设置 宽度 高度,所以要把a设置为块级元素:ul li a{display:block;} *{ } (用于全局设置) hover格式 a:hover{}
    查看全部
  • <script> window.onload=function(){ var aA=document.getElementsByTagName('a'); for(var i=0; i<aA.length; i++){ aA[i].onmouseover=function(){ var This=this; clearInterval(This.time); This.time=setInterval(function(){ This.style.width=This.offsetWidth+8+"px"; if(This.offsetWidth>=160) clearInterval(This.time); },30) } aA[i].onmouseout=function(){ clearInterval(this.time); var This=this; this.time=setInterval(function(){ This.style.width=This.offsetWidth-8+"px"; if(This.offsetWidth<=120){ This.style.width='120px'; clearInterval(This.time); } },30) } } } </script>
    查看全部
    0 采集 收起 来源:编程练习

    2018-03-22

举报

0/150
提交
取消
课程须知
1.熟悉html知识,尤其对<ul>和<a>比较熟悉; 2.对css样式比较了解; 3.掌握JavaScript和jQuery基础知识。
老师告诉你能学到什么?
轻松制作出各种形式的网站导航条菜单

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!