`
wyzxzws
  • 浏览: 389080 次
  • 性别: Icon_minigender_1
  • 来自: dazhou
社区版块
存档分类
最新评论

不用图片和JS,照样创建绚丽的动态CSS3菜单---转载

阅读更多

转载:http://www.html5cn.org/article-5363-1.html

问题:虽然已经开发前端n些日子了,可是对一些例子仍旧感觉不错。

解决方案:该教程,我们将讨论CSS3的一些新功能和新特性,并教你在不使用图片和JavaScript的情况下,如何制作酷炫的圆形导航菜单。该实例将用到CSS3的新特性: border-radius和animation。

Demo演示  下载代码

第一步:编辑菜单的HTML代码

菜单包含三个列表项,分别取名为“Menu1”、“Menu2”、“Menu3”。

 

1
2
3
4
5
6
7
8
view plaincopy to clipboardprint?
<div class=“css3Menus”> 
<ul
    <li>Menu1</li
    <li>Menu2</li
    <li>Menu3</li
</ul
</div>

 

第二步:设置菜单的背景

在该步骤中,我们将把导航的背景设置为黑色。宽度、高度和内边距为可选项,可以不设置。

 

1
2
3
4
5
6
7
view plaincopy to clipboardprint?
.css3Menus { 
background#14080a
width:506px
height:260px
padding:20px
}

 

如下图:

第三步:利用border-radius,制作圆形导航。

该步中,我们会利用CSS3的一些酷的功能,尤其是border-radius ,将每个列表项的背景设置为黄色,形状为圆形。 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
view plaincopy to clipboardprint?
ul { 
list-stylenone
   
li { 
float:left
font14px/10px ArialVerdanasans-serif
color:#FFF
background-color:#CCCC00
width80px
height80px
padding:20px
margin:0 30px 0 0
-webkit-border-radius: 60px
-moz-border-radius: 60px
border-radius: 60px
}

 

菜单看起来呈下面样子:

 

 

第四步:设置菜单的对齐方式

 

本步骤中,我们将为每个列表项设置特定的背景颜色与位置:

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
view plaincopy to clipboardprint?
li#menu1 
background-color#00FFCC
li#menu2 
background-color#CC9900
margin-top:100px
li#menu3 
background-color#33FF66
margin-top:50px
}

 

 

 

现在菜单看起来呈下面样子:

 

 

第五步:设置菜单中链接的对齐方式

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
view plaincopy to clipboardprint?
li a { 
color:#FFF
text-decoration:none
display:block
width80px
height45pxtext-aligncenter
padding:35px 0 0 0
margin:0 40px 0 0
-webkit-border-radius: 40px
-moz-border-radius: 40px
border-radius: 40px
li#menu1 a { 
background-color#FF0000
li#menu2 a { 
background-color#660033
li#menu3 a { 
background-color#66CCCC
}

 

 

 

菜单现阶段的样子:

 

 

第六步:定义另一种效果,当鼠标悬浮在链接上时进行展现 

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
view plaincopy to clipboardprint?
li a:hover, 
li a:focus, 
li a:active { 
width120px
height:65px
padding:55px 0 0 0
margin:-20px 0 0 -20px
-webkit-border-radius: 60px
-moz-border-radius: 60px
border-radius: 60px
}

 

 

 

菜单样式如图:

 

 

 

 

第七步:最后为导航增加动画效果

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
view plaincopy to clipboardprint?
li a:hover, 
li a:focus, 
li a:active { 
-webkit-animation-name:bounce; 
-webkit-animation-duration:1s; 
-webkit-animation-iteration-count:4
-webkit-animation-direction:alternate; 
@-webkit-keyframes bounce{from{margin:0 40px 0 0;} 
to{margin:120px 40px 0 0;} 
}

 

 

 

菜单所产生的动画效果:

 

 

结论

 

      通过上面教程,你已经学到如何制作酷的动画菜单。在制作过程中不需要使用JavaScript和图片,只需要使用CSS3的一些酷的特性即可。该菜单可以完美地运行于Chrome和 Safari浏览器。在 Firefox浏览器中,无法看到动画效果。

 

 

 

 

 

注:真的感谢这位Laeeq博主,我对前端的兴趣又倍增了!

 

分享到:
评论

相关推荐

    js和CSS3炫酷圆形导航菜单插件

    "circular-menu" 是一个利用JavaScript(js)和CSS3技术实现的圆形导航菜单插件,它以其独特的视觉效果和交互体验吸引用户注意力。 ### 插件特点 1. **圆形布局**:此插件以圆形布局展示导航菜单项,这种设计打破...

    Css3折叠菜单-可展开的树形导航菜单.rar

    Css3折叠菜单-可展开的树形导航菜单,其实就是折叠、展开式的菜单,应用了HTML5重绘而成,无使用jquery,完全CSS3技术实现,面向Android手机等移动终端设备浏览,请注意不要使用IE等浏览器查看效果。

    jsp动态菜单---自定义的一个菜单

    JSP(JavaServer Pages)是Java平台上的一个用于创建动态web内容的技术,它结合了HTML和Java代码,使得在服务器端生成动态网页变得更加方便。这个“jsp动态菜单”项目显然利用了JSP的强大功能,通过与数据库交互,...

    HTML-CSS-JS 学习.zip

    HTML-CSS-JS 学习HTML-CSS-JS 学习HTML-CSS-JS 学习HTML-CSS-JS 学习 HTML-CSS-JS 学习HTML-CSS-JS 学习HTML-CSS-JS 学习HTML-CSS-JS 学习 HTML-CSS-JS 学习HTML-CSS-JS 学习HTML-CSS-JS 学习HTML-CSS-JS 学习 ...

    d3threejs使用D3和THREEjs实现的CSS3D变换

    CSS3D变换是CSS3中的一个重要特性,它允许元素在3D空间内进行旋转、平移和缩放,从而创建出立体视觉效果。结合D3和THREE.js,我们可以利用CSS3D变换来对2D数据进行深度处理,如将折线图转化为3D曲线,或将柱状图转换...

    css-dock-menu

    3. **CSS3选择器**:高级CSS3选择器,如伪类选择器(`:hover`、`:active`、`:focus`)和兄弟选择器(`+`、`~`),可以用于创建动态响应的菜单,如鼠标悬停时改变颜色或形状,以及在菜单项之间添加动画效果。...

    css+js漂亮 二级横向导航菜单-大全

    本文将深入探讨如何使用CSS(层叠样式表)和JavaScript技术来创建一款既美观又实用的二级横向导航菜单,主要关注"css+js漂亮蓝色二级横向导航菜单-大全"这一主题。 首先,我们来看CSS在构建导航菜单中的作用。CSS...

    不用JS实现3级下拉菜单,纯css3.rar

    CSS3引入了许多新的选择器、属性和过渡效果,使得我们可以创建动态且交互性强的界面,而不必借助JavaScript。在"纯css3实现3级下拉菜单"的例子中,设计师巧妙地利用了这些特性来创建流畅的动画效果,同时保持了良好...

    js和CSS3鼠标悬停超链接展示图片特效

    CSS3引入了许多新的选择器、属性和动画功能,使得我们可以创建出更动态、更具表现力的网页设计。在这个特效中,关键CSS3属性可能包括`transition`(过渡效果)、`transform`(变换)以及`animation`(动画)。通过...

    前端开源库-postcss-js-mixins

    总之,PostCSS JS Mixins为前端开发者提供了一种在PostCSS环境中实现mixin的解决方案,通过结合JavaScript的强大能力,提升CSS的灵活性和代码质量。在实际项目中,它能够帮助开发者更高效地管理和重用样式代码,从而...

    css3立体旋转菜单.zip

    随着技术的发展,CSS3的出现为菜单导航的设计带来了更多可能性,尤其是3D效果的引入,使得菜单变得更加生动和引人注目。本篇文章将详细介绍如何利用CSS3实现一个立体旋转菜单,通过实例解析其关键技术和应用。 首先...

    Javascript+CSS实现的弧形导航二级菜单

    本文将深入探讨如何使用JavaScript和CSS技术来创建一个美观且实用的弧形导航二级菜单。 首先,我们来看"导航"这一核心概念。在网页设计中,导航通常位于页面的顶部或侧边,用于列出网站的主要部分或子页面。一个好...

    纯CSS3炫酷3D菜单 菜单项3D旋转动画

    本主题聚焦于“纯CSS3炫酷3D菜单”及其“菜单项3D旋转动画”,这是一个利用CSS3的新特性来实现动态交互式菜单的设计技术。下面将详细介绍这个知识点,并探讨如何利用CSS3实现3D旋转动画。 1. CSS3 3D变换: CSS3...

    纯CSS3环形菜单动画 可展开二级子菜单

    在实际编码中,可能还需要使用到其他CSS3特性,如`flexbox`或`grid`布局来简化菜单的对齐和响应式设计。`flexbox`可以轻松地处理元素的排列和对齐,而`grid`布局则更适合创建二维网格系统,对于复杂的菜单结构尤为...

    简单的Css 动态菜单

    总结,创建一个简单的CSS动态菜单需要理解CSS的基本语法,运用选择器、属性和值来定义样式,同时结合JavaScript和媒体查询实现交互效果和响应式设计。这个过程既锻炼了前端基础,又提升了用户体验。通过不断的实践和...

    黑色导航简单标准专题css3模板-博客 标准 菜单 css3 专题 简单.rar

    该压缩包文件“黑色导航简单标准专题css3模板-博客 标准 菜单 css3 专题 简单.rar”提供了一个基于CSS3的网页设计资源,特别适合用于创建具有专业外观的博客或网站导航菜单。CSS3是层叠样式表(Cascading Style ...

    js和css3智能隐藏和显示的顶部导航菜单

    本文将深入探讨如何使用JavaScript(简称js)和CSS3来创建一款智能隐藏和显示的顶部导航菜单。这种菜单在用户滚动页面时能根据滚动方向和距离自动调整其可见性,提供更流畅的浏览体验。 首先,我们来了解CSS3。CSS3...

    CSS-Circle-Menu, 用CSS生成的飞出圆菜单.zip

    CSS-Circle-Menu, 用CSS生成的飞出圆菜单 CSS圆飞行导航我的循环飞出CSS导航菜单组件,用CSS3构建。 在这里查看演示。 用法要使用,在应用程序中包含CSS和 JavaScript 。 按如下方式标记你的菜单:&lt;nav class="c-...

    css3菜单导航.zip

    总结来说,"css3菜单导航.zip"中的代码示例展示了如何利用CSS3的特性,尤其是圆角、阴影、过渡和动画等,来创建具有吸引力的菜单导航。开发者可以从中学习到如何运用这些技术来提高网页的互动性和视觉效果。同时,...

    css3-mediaqueries.js+html5.js

    在本案例中,"css3-mediaqueries.js" 和 "html5.js" 是两个JavaScript库,它们主要用于增强对旧版Internet Explorer(如IE8和IE7)的支持,使这些浏览器能够实现CSS3媒体查询和HTML5新特性的兼容。 **CSS3媒体查询*...

Global site tag (gtag.js) - Google Analytics