实例讲解:用CSS制作“鼠标经过图像”

css|鼠标

以前我们用表格来布局网页时,我们都很喜欢用DW(Dreamweav)中的“鼠标经过图像”,因为那的确吸引人!但是我们也同样发现这样的一个问题:当网速不太快的时候,鼠标经过后的图片还没有下载下来,看上去很不美观。并且还需要一大堆的JS代码,还需要预载经过图片。相对来说比较麻烦!特别是对那些现在记事本来手工编写网页的朋友更是烦得很。事实上用CSS就可以解决这个问题,并且非常的简单,下载快,不会出现鼠标经过后的图片还没有下载下来这种情况。这个做法的原理很简单:就是用<a>标签的a:hover来触发鼠标事件,然后通过CSS来变化其背景的上下左右的位置。下面就主要分析一下用CSS来制作“鼠标经过图像”。

XHTML代码:
<ul id="nav">
<li id="nav1"><a href="/" mce_href="/">nav1</a></li>
<li id="nav2"><a href="/" mce_href="/">nav2</a></li>
<li id="nav3"><a href="/" mce_href="/">nav3</a></li>
<li id="nav4"><a href="/" mce_href="/">nav4</a></li>
<li id="nav5"><a href="/" mce_href="/">nav5</a></li>
</ul>

这里用一个菜单来讲解,在实际运用中我们可能会有其它方面的运用。这里我们看到并没有图片,那是因为我们的图片都是用CSS调用的背景,而每个LI都有一个ID,那是因为这里的菜单图片是不同的!每个LI都有自己的菜单内容。

好了,现在需要把这个列表处理一下横向排放:
#nav li {margin: 0; padding: 0; list-style: none; display: inline;}
我们都知道<a>标签不是默认的块级元素,如果不是块级元素鼠标所感应的热区就不是我们所设定的长宽,而是其元素本身的大小。但CSS可以把其声明为块级元素。
#nav a { float:left; padding: 34px 0 0 0; overflow: hidden; height: 50px;}
这里有一个很有意思的事!那就是,在这一句中有没有“display:block;”都是一样的。这里的“padding:34px 0 0 0;”是我们背景图的一半高度(注:背景图是把两张图片上下合在一起的图片)但是并不是用来控制背景图的,而是把<a>标签中的文字隐藏。由于触发动作并且移动位置是一样的,所以可以集中描述移动背影的位置。
#nav a:hover { background-position: 0 -34px;}
这句的意思是:在#nav下的所有链接在鼠标经过时其背景向上移动34个像素。最后就是给菜单中的每一个链接加上背景图片。
#nav1 a {width:59px;background:url(btn_nav1.jpg) top left no-repeat;}
#nav2 a {width:69px;background:url(btn_nav2.jpg) top left no-repeat;}
……
好了,完成,其中要注意的是:“padding:34px 0 0 0;”“#nav a:hover { background-position: 0 -34px;}” 需要根据自己的实际情况来设定值。

时间: 2024-12-24 02:29:56

实例讲解:用CSS制作“鼠标经过图像”的相关文章

实例讲解:CSS制作鼠标经过改变表格背景属性

css|鼠标 这份教程将教会你下面的技巧:当鼠标移至表格(单元格)上方时,改变表格的背景颜色. 首先,在你的页面上创建一个菜单:然后,创建两种用于鉴别的颜色体:一个是表格的初始颜色,另一个是鼠标移至表格上方时所产生的背景颜色.在我这个案例中,我所默认使用的背景效果颜色(鼠标以上去时)是:#999999,初始颜色是:#CCCCCC. 现在,将下面这段代码复制到文档头部.(位于<HEAD></HEAD>标签之间)<style type="text/css"&g

用CSS制作鼠标经过图像

css|鼠标 以前我们用表格来布局网页时,我们都很喜欢用DW(Dreamweav)中的"鼠标经过图像",因为那的确吸引人!但是我们也同样发现这样的一个问题:当网速不太快的时候,鼠标经过后的图片还没有下载下来,看上去很不美观.并且还需要一大堆的JS代码,还需要预载经过图片.相对来说比较麻烦!特别是对那些现在记事本来手工编写网页的朋友更是烦得很.事实上用CSS就可以解决这个问题,并且非常的简单,下载快,不会出现鼠标经过后的图片还没有下载下来这种情况.这个做法的原理很简单:就是用<a&

CSS+DIV设计实例:纯CSS制作下拉导航菜单

css|菜单|设计|下拉 纯CSS制作的下拉导航菜单-这是一个老外的作品,基本上全是用CSS+HTML写出来的,值得大家学习 以下是引用片段:<style type="text/css">.menu {font-family: verdana, sans-serif; width:750px; position:relative; font-size:0.85em;padding-bottom:250px;}.menu ul {padding:0; margin:0;lis

实例讲解用CSS设置多彩的连接下划线

css 链接下划线可以改变颜色吗?下面给大家讲解如何利用CSS改变连接下划线颜色. 我们在进行Web页面设计的时候,根据不同的需要,可能会想要去除链接下划线的效果.而此效果只需要一句话就可以解决了.代码如下:     text-decoration:none; 如果保留着链接文字的下划线,默认的颜色属性是如链接文字同样的颜色,看下面的例子: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://

网页实例:用CSS制作带有样式的网页按钮

css|按钮|网页 今天把公司平台中前设计师做的按钮部分重新设计了下,原先他使用的JS实现图片交替变化的方式,但那样的缺点是:占用了input里的ID属性,而且disabled也不能使用,不利于程序的设计制作. 按钮重新制作的思想: 1.实现触发与不触发之间的差别:2.适用input和a:3.多种浏览器下无差别. 按钮重新制作的过程: 1.利用不同样式实现触发与不触发之间的差别:2.利用boder来模拟按钮阴影 以下代码在IE6.IE7.FF下测试正常! CSS部分:.button-style0

实例讲解使用CSS实现多边框和透明边框的方法

  CSS多边框 Backgrounds & Borders Level 3 还是一份草案的时候,CSS WG 就在是否支持多重边框的问题进行了大量的探讨,就像是讨论多重背景图片一样.不幸的是,当时认为多重边框的用处并不大,即使需要也可以使用border-image属性来模拟.不过,WG显然忘记了在 CSS 代码中灵活地调整边框,才是我们需要的,现在开发者只能使用一些Hack手段来模拟多重边框,比如使用多重元素的嵌套来模拟多重边框.现在,我将告诉你一些更优秀的方法,无需使用多余的标签即可实现多重

用CSS制作&amp;quot;鼠标经过图像&amp;quot;

css 网页时,我们都很喜欢用DW(Dreamweav)中的"鼠标经过图像",因为那的确吸引人!但是我们也同样发现这样的一个问题:当网速不太快的时候,鼠标经过后的图片还没有下载下来,看上去很不美观.并且还需要一大堆的JS代码,还需要预载经过图片.相对来说比较麻烦!特别是对那些现在记事本来手工编写网页的朋友更是烦得很.事实上用CSS就可以解决这个问题,并且非常的简单,下载快,不会出现鼠标经过后的图片还没有下载下来这种情况.这个做法的原理很简单:就是用<a>标签的a:hover

css实现鼠标悬停时滑出层提示的方法

 本文实例讲述了css实现鼠标悬停时滑出层提示的方法.分享给大家供大家参考.具体分析如下: 这是一个简单的鼠标悬停提示特效,类似于alt标签,不过这一种是用纯CSS实现,扩展性好,而且在提示的层里可以加入图片或其它布局,这个要根据你的需要了.   代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-tran

CSS实例讲解:地图提示

css 地图弹窗(map pop)具体演示 <!DOCTYPE htmlPUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equ