本文中我们通过制作一个倾斜的鼠标翻转导航为例分析一下,希望可以帮助一些对于鼠标翻转导航制作上还存在疑问的朋友。
前天网上有个朋友发给我一个页面让我帮她看一下为什么鼠标翻转实现不了。我打开源文件看了一下,发现作者根本没有掌握一个鼠标翻转的特性。并且对于倾斜导航的思考也不足。虽然我当时看出来了这些问题,但是由于手上一个项目正在收尾一时也没有时间向她一个讲解。正好昨天工作忙完了,现在又拿起那个文件看了一下,发现通过这个事件可以讲解好多个知识点,有一些地方比较容易让人不太注意,但是确实是非常关键的。
我们先看一下想要实现的效果,当然在没做之前这些只能是存在于我们的脑子或是草图上。我们首先要想到它是个什么样子,然后才能去分析我们想要实理的效果是应该如何去做,闲言少叙,先看图:
大家注意上图中的“危险区”很明显,如果我们把两个倾斜的正块放在一起就必然会有一段重复区,我们现在的CSS还不支持异形处理。要解决这个问题就必需要使得这两个方块进行重叠。重叠就需要把他们放在不同的层次上。这就要用到CSS中的定位:“position : static | absolute | fixed | relative ”。
做鼠标翻转我们通常会把所有的背景做成一个图,然后通过CSS来设置不同标签下的图片的不同位置。也许有人就会认为这个导航的背景图应该是这样的:
只有这样在没有危险区的情况下才能作为最终的背景图片使用。当然还要注意的是背景并不是白色而是透明的,主要不是为了与网站的背景融合,关键是不要挡住在危险区的相邻的背景。我使用的是GIF图,GIF图有透明的时候边缘会有一点毛边。如果希望应对不同的色彩的网站背景,最好使用PNG或是把GIF图的边缘做成点像素。
对于这个背景图的思考完成之后我们就需要想想怎么制作这个导航了。先来分析一下这个鼠标翻转,原来做鼠标翻转是JS的事,现在可以通过CSS的:hover也可以实现这个翻转效果,代码少、结构清晰。所以这里这五个导航的翻转就是由A:hover来实现
本文作者: