CSS实现文字变图象效果

网络整理 - 07-28
    一段文字,当鼠标在文字上面单击,文字消失,原来文字的地方却立即变成了一张图片,当鼠标在图片上单击,图片又消失,原来的文字又重现了,像变魔术一样,是不是有意思?!这种效果用Dreamweaver的Behavirs 功能也可实现,但那要增加一段Javascript程序,明显增加了不少代码。而用CSS来制作这种效果,增加的代码却要少得多。

  原理:利用CSS的属性值可动态改变的特点。

  思路:定义一个HTML元素CSS属性的两种属性值,再用一个事件来触发,一旦事件发生,则改变HTML元素的属性值,从而达到预期目的。

  制作方法:

  1、在网页中输入一段文字,用“Span”标记把它括起来,并给它加一个CSS的“ID”属性(也就是给这段文字编一个代号,如:“Text1”,以便识别);再插入一张图片,同样也用“Span”把它括起来,也给它加一个“ID”属性,如:ID="image1";

  2、在网页源代码的<head>与</head>之间加上下面这段CSS代码:

  

<style type="text/css">
  <!--
  .style1 { position:absolute; top: 200px; left:180px;
  background-color:#ccccff; visibility:hidden}
  .style2 { position:absolute; top: 200px; left:180px;
  background-color:#ccccff; }
  .style3 { position:absolute; top: 190px; left:180px;
  visibility:hidden}
  .style4 { position:absolute; top: 190px; left:180px; }
  -->
  </style>



  上述代码中的“top”、“left”的值用于定位文本和图片在网页中位置,“backgroud-color”用于确定文本的背景颜色,这些属性值要根据实际情况修改。visibility是决定当前对象是否显示的CSS属性,本例就是动态地改变这个属性值来达到效果的;

  3、在“Text1 ”的那个“span”中加载CSS的“.style2”,让那段文本一开始是显示的,并再加载一个“onclick”触发事件,一旦这个事件发生,将做两件事,一是让“Text1”采用CSS的“.style1”,把文本隐藏;二是让“image1”采用CSS的“.style4”,让图象显示。这样,“Text1”及那段文本的代码是这样的:

 

<span id="text1" class="style2" onclick="document.all.text1.className='style1'; document.all.image1.className='style4'">
 <font color="#0000FF">鼠标在这段文字上单击,文字消失变为图象。在图象上单击,图象消失,恢复为文字。</font>
  </span>



  4、同样在“image1 ”的那个“span”中加载CSS的“.style3”,让那张图片一开始是隐藏的,并再加载一个“onclick”触发事件,一旦这个事件发生,将做两件事,一是让“Text1”采用CSS的“.style2”,把文本显示;二是让“image1”采用CSS的“.style3”,让图象隐藏。这样,“image1”及那张图片的代码是这样的:

 

<span id="image1" class="style3" onclick="document.all.text1.className='style2';document.all.image1.
  className='style3'"><img src=http://www.zzsky.cn/build/content/"image/line.gif" width="316" height="26">
 </span>



  上面代码中“img”中的代码在实际制作中将随插入图片的不同而改变。