[xhtml+css实例]不规则导航的制作

作者:林小志 来源:林小志博客 时间:2008-04-04 18:11:00 

前段时间做一个小项目碰到了一个导航制作的方式然后突然想到曾经很久以前看到的梯形状的不规则导航,就尝试做了一下。结果碰到了几个问题,后来在同事的提醒下总算完成了,记录一下也跟大家分享分享。

先看图(图片只是大致做了一下)


xhtml结构部分内容:


<ul>
    <li><a href="#" title="菜单">菜单</a></li>
    <li><a href="#" title="菜单">菜单</a></li>
    <li><a href="#" title="菜单">菜单</a></li>
</ul> 

css部分内容:

* {margin:0;padding:0;font:normal 12px/25px "宋体";}
body {background:#f8f8f8;}
ul {list-style:none;width:300px;height:25px;margin:20px auto;}
li {float:left;width:86px;height:25px;text-align:center;margin:0 -5px;display:inline;}
a {color:#fff; float:left;width:86px;height:25px;top:0;left:0;background:url(/file/UploadPic/20084/4/200844181915677.gif) center center no-repeat;}
a:hover {color:#000;background:url(/file/UploadPic/20084/4/200844181915759.gif) 0 0 no-repeat;width:86px;position:relative;} 

效果展示:


思路:

主要是利用当:hover触发的时候让a定位,出了li的浮动范围,出现梯形的图片。从而实现了不规则导航的菜单。

过程:

1、在浏览器中,根据li的结构表现,后面的li会覆盖住前面的li,如果宽度足够的话,是靠边在一起,那么只要利用负边距就可以实现初始状态下相互叠加的样式。margin:0 -5px;

2、初始状态下的叠加实现了,要解决的就是:hover触发的时候,让<a href="#" title="菜单">菜单</a>这个放弃浮动使用定位。在这个过程中如果是要利用绝对定位话,会让有一个z-index的问题出现。

这个问题只体现在IE中,FF下是无问题的,可以正常显示。IE中表现出来的是最后一个li永远都会盖住前面的li,那么当鼠标经过的时候就无法完美显示了。

个人认为比较重要的几个属性:

1、li中的负边距,实现叠加效果

2、:hover中的position:relative

3、a是内联元素,要触发haslayout,可以使用float:left来触发

标签:导航,不规则,hover,css
0
投稿

猜你喜欢

  • WinHTTP Services 5.1 参考资料

    2010-03-27 20:49:00
  • 做网站要习惯化与去习惯化

    2008-06-18 13:36:00
  • Oracle 数据库操作技巧集

    2010-07-26 12:49:00
  • 使用Javascript面向对象的思想编写ASP

    2008-06-16 12:20:00
  • 国际上十四个优秀网页设计审核站

    2007-09-30 20:18:00
  • Oracle数据库的备份及恢复策略研究

    2010-07-16 12:54:00
  • 在JScript中使用RecordSet对象的GetRows方法

    2008-01-16 13:12:00
  • JS:firefox 兼容性问题

    2009-08-01 16:20:00
  • 用CSS实现柱状图(Bar Graph)的方法(四)—table实现复杂柱状图

    2008-05-28 12:55:00
  • sqlserver中获取月份的天数的方法分享

    2011-09-30 11:27:52
  • 重新认识ASP之后的我在想"是时候改变了"

    2008-05-08 13:10:00
  • 大家都对vertical-align的各说各话

    2008-06-19 12:11:00
  • PHP实现表单处理方法详解

    2023-05-25 07:39:18
  • 让所有IE支持HTML5的解决方案

    2009-10-31 18:43:00
  • [翻译]标记语言和样式手册 Chapter 15 为body指定样式

    2008-02-21 12:36:00
  • ASP字符串16进制互转

    2008-06-24 12:28:00
  • 动态载入asp树源码

    2007-09-06 19:34:00
  • 纯CSS圆角框

    2009-12-11 18:57:00
  • 数字人组件反写[asp组件开发实例5]

    2009-06-09 13:23:00
  • asp如何让页面背景五彩缤纷?

    2010-05-13 16:38:00
  • asp之家 网络编程 m.aspxhome.com