用CSS层叠样式表实现文字变图象特效

  •   2009-07-31/13:33
  • 一段文字,当鼠标在文字上面单击,文字消失,原来文字的地方却立即变成了一张图片,当鼠标在图片上单击,图片又消失,原来的文字又重现了,像变魔术一样,是不是有意思?!这种效果用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”及那段文本的代码是这样的:〈spanid="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="image/line.gif" width="316"

    height="26"〉〈/span〉

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


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多