免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1460 | 回复: 0
打印 上一主题 下一主题

wordpress之header设计 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-04-18 20:45 |只看该作者 |倒序浏览
转:lonelystarxing

wordpress之header设计



前面一篇关于wp_nav_menu方法的使用说明,

这里对wordpress的header的一些具体操作作详细说明。

在激活菜单功能,编辑菜单并且调用后。

下面主要内容为菜单鼠标悬停效果的实现以及子菜单排版问题。

1.菜单鼠标悬停效果的实现

view sourceprint?
  1. <script type="text/javascript">  

  2. $(function($){  

  3. var current_page=$('#menu-header-menu > .current-menu-ancestor, #menu-header-menu > .current-menu-item, #menu-header-menu > .current_page_item');  

  4. var current_page_class = 'current-menu-item current-page-item current_page_item';  

  5.    

  6. $('#menu-header-menu > .menu-item').hover(  

  7. function(){  

  8. if(this == current_page[0]) return;  

  9. current_page.removeClass(current_page_class);  

  10. $('.sub-menu', current_page).hide();  

  11. $(this).addClass(current_page_class);  

  12. },   

  13. function(){  

  14. if(this == current_page[0]) return;  

  15. $(this).removeClass('current-menu-item current-page-item current_page_item');  

  16. current_page.addClass(current_page_class);  

  17. $('.sub-menu', current_page).show();  

  18. });  

  19. });  

  20. </script>
复制代码
其中第一个function()作用为:鼠标移动至相应的菜单上,

能为我们获取到当前所在item,并添加相应的class。

第二个function()作用为:鼠标移除该菜单项时,

系统能为我们释放刚才获取到的item。

我们可以通过添加css来突出我们鼠标所选中的item,

如字体突出,添加背景色或者背景图片等。

2.菜单排版问题

    1)菜单栏单列宽度调整

        因为是自动调用后台设置的菜单,而后台菜单可以经常改动,

    这需要对单列菜单的宽度以及背景色背景图片的宽度等进行更改。

  2)菜单排列

    默认排列方式为纵向,可以通过float:let;将菜单横向排列。

    当菜单有自己菜单时,通过css即可设置,

    效果为:当鼠标移动到菜单栏中父级菜单时,子菜单显示出来,

    鼠标移开后,隐藏子菜单,同时释放父级菜单效果。

 3)与父级菜单类似,自己菜单也通向默认为纵向排列。

    此时想让子菜单栏横向排列,一个float:left;并不能解决问题。

    我们需要position:absolute;

    同时还需要添加个left:0;

    此时显示效果为子菜单横向并且靠左排列。

    注:TRBL属性(TOP、RIGHT、BOTTOM、LEFT)只有当设定了position属性才有效。
      当设定position:absolute
          如果父级(无限)没有设定position属性,那么当前的absolute则结合TRBL属性以浏览器左上角为原始点进行定位
      如果父级(无限)设定position属性,那么当前的absolute则结合TRBL属性以父级(最近)的左上角为原始点进行定位。

      当设定position: relative
             则参照父级(最近)的内容区的左上角为原始点结合TRBL属性进行定位(或者说相对于被定位元素在父级内容区中的上一个元素进行偏移),无父级则以BODY 的左上角为原始点。

      相对定位是不能层叠的。在使用相对定位时,无论元素是否进行移动,元素依然占据原来的空间。因此,移动元素会导致它覆盖其他框。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP