用CSS实现文字变图象特效
一段文字,当鼠标在文字上面单击,文字消失,原来文字的地方却立即变成了一张图片,当鼠标在图片上单击,图片又消失,原来的文字又重现了,像变魔术一样,是不是有意思?!这种效果用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="/UploadFiles/2021-04-02/line.gif">
height="26"〉〈/span〉
上面代码中“img”中的代码在实际制作中将随插入图片的不同而改变。
下一篇:利用相对定位及偏移量做精美输入界面