整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

手撸一个超级酷炫的菜单导航CSS动效

手撸一个超级酷炫的菜单导航CSS动效

近实现了一个酷炫的菜单导航CSS动效,使用纯HTML、CSS、JavaScript实现,实现方法简单高效。

下面是最终效果,欢迎喜欢的同学持续关注我~


动效演示

视频链接:手撸一个超级酷炫的菜单导航动效 - Part1:基础布局

涉及到知识点

开源图标库:ionicons

https://ionic.io/ionicons

flex 布局

https://developer.mozilla.org/zh-CN/docs/Web/CSS/CSS_Flexible_Box_Layout/Basic_Concepts_of_Flexbox

声明CSS全局变量

https://developer.mozilla.org/zh-CN/docs/Web/CSS/:root

:root { --my-color: red; }

transition 被指定为一个或多个 CSS 属性的过渡效果

https://developer.mozilla.org/zh-CN/docs/Web/CSS/transition

transform

https://developer.mozilla.org/zh-CN/docs/Web/CSS/transform

translateX/Y() 二维平面上移动元素

https://developer.mozilla.org/zh-CN/docs/Web/CSS/transform-function/translateX

calc() 声明 CSS 属性值时执行一些计算

https://developer.mozilla.org/zh-CN/docs/Web/CSS/calc

:nth-child() CSS 伪类选择器

https://developer.mozilla.org/zh-CN/docs/Web/CSS/:nth-child

伪元素

https://developer.mozilla.org/zh-CN/docs/Web/CSS/::before

::before

::after

不多说,直接来实现经典轮播图导航栏效果。

实现效果图:



实现代码如下:

JavaScript



下面的这个是index.css文件,主要是样式布局文件:



使用方法:

这里的css文件是放在css文件夹下面,里面会用到一个xframe.js文件,就相当于是一个JQuery文件,大家下载之后改为对应的名字就行,然后放在js 文件夹下面,后面就是一个index.html 文件了, 基本上将上面需要的依赖包放在同一个文件夹下面就可以运行了。


最后,小编整理了一份web前端学习资料,私信回复【01】,获取源码。

欢迎关注胖胖冲鸭的头条号,可视化学习web前端,每天更新文章,让web前端学习更加简单。

声明:本文内容来源于网络,如有侵权请联系删除

一个网站都有自己的导航菜单,如:头部导航菜单,底部导航菜单,侧边栏导航菜单,wordpress网站也不例外。那么,在wordpress网站主题模板开发中,我们怎样给wordpress网站添加前台的导航菜单呢?嗯,据我多年的开发经验发现,wordpress为wordpress主题开发,主要提供了三种导航菜单的创建方式,这三种方式会创建不一样的导航功能。今天,我们就来看看第一种wordpress网站创建导航菜单的方式——基于page页面的导航菜单。这里,我们会用到wordpress提供的函数——wp_list_pages(),这是一个wordpress页面列表的函数。

我们先来看一下这个wordpress函数——wp_list_pages(),看看它的结构。

wp_list_pages($defaults);

从上面的代码中,我们可以看到,wp_list_pages()函数只有一个参数,这个参数有两种类型,可以是字符串类型,也可以是数组类型。这个我们在下面的实例中会做相应的介绍。为了方便了解这个参数的值,我们这里以数组的形式来解说一下这个参数。

参数介绍:

$defaults=array('depth'=>0, //0:显示所有页面和子页面,按层级显示;//1:只显示顶级页面;//2:显示2级页面;//-1:显示所有页面和子页面,不按层级显示;

'show_date'=>'', //是否显示创建日期

'date_format'=> get_option('date_format'),//日期格式

'child_of'=>0, //指定父页面ID号,显示这个父页面下的子页面;0表示显示所有子页面;

'exclude'=>'', //排除哪些页面

'include'=>'', //包含哪些页面

'title_li'=>'Pages', //是否显示页面列表的标题,如果不显示,设为空;这里设置标题为“Pages”

'echo'=>1, //是否打印到前台页面显示出来。1表示显示,0表示不显示,而是只获取值。

'authors'=>'', //指定特定作者创建的页面

'link_before'=> '', //链接<a>前的内容'link_after'=>'', //链接<a>后的内容

'exclude_tree'=>'', //排除父级/子级树

'sort_column'=>'menu_order', //排序方式,menu_order按后台设置;post_date按发布时间,post_modified按修改时间;

'sort_order'=> 'DESC', //排序顺序,ASC顺序,DESC是倒序);

可以看到,这个wp_list_pages()函数的参数值有很多,在我们wordpress主题模板开发的实际操作中,一般只会使用其中的几个。

下面,我们通过案例来介绍wp_list_pages()函数是如何生成基于page页面的导航菜单的。我们先来看一下,wordpress网站后台都创建了哪些page单页面,如下图:


从上图中,我们可以看到,这个wordpress网站后台有6个页面,其中,“投稿”是“子页面1”和“子页面2”的父级页面。

案例1:我们在wordpress网站模板的头部添加如下代码:

$menu=array( 'depth'=>0, 'title_li'=>'页面导航菜单', 'echo'=>1, );wp_list_pages($menu);

我们再到wordpress网站的前台页面看一下效果,如下图:


我们可以看到,页面导航展示了出来,子页面按层级展示——缩进2格。

案例2:我们来修改一个参数代码,标题设置为空,添加一个排序参数,并修改一下层级参数值,代码如下:

$menu=array( 'depth'=>1, 'title_li'=>'页面导航菜单', 'echo'=>1, 'sort_order'=> 'DESC','sort_column'=>'menu_order',);wp_list_pages($menu);

这时,我们再来看看wordpress网站前台页面的效果,如下图:


?我们可以看到,导航菜单的标题不见了,而且层级没有了,排序也发生了变化,按页面名称的倒序来进行排列。wp_list_pages()的参数很多,这里不做一一演示,都很简单。

案例3:wp_list_pages()函数的参数用字符串类型。

我人在开头说过,wp_list_pages()函数的参数有2种类型,可以是字符串类型,也可以是数组类型。数组类型我们在前2个案例中已经使用过了。这里,我们再来以字符串类型来做一次介绍。

这里我们拿案例的代码来演示,把数组类型的参数换成字符串的类型,代码如下:

wp_list_pages("depth=1&title=&echo=1&sort_order=DESC&sort_column=menu_order");

上面的代码中,我们用到了一个连接符&这个特殊符号,它是用来连接多个参数。中间的=这个符号,就不用解释了,是等于号。通过这句代码,我们同样达到案例2的效果。

如果想让这个基于page页面的导航菜单能在顶部横排显示,可以修改wordpress网站模板的CSS文件的代码,修改它的样式,就可以了。这里就不多说了。

这节课就介绍到这里,以上就是我的观点,如有不同观点,欢迎发表评论。同时,欢迎【点赞、分享、收藏】和【关注】我。