用CSS动态控制文本属性

本篇详细介绍了用CSS动态控制文本属性的文章主题,利用CSS的属性值可动态改变的特点,定义文本的多种属性值,再用一个事件来触发,一旦事件发生,则改变文本属性值,从而达到预期目的。

用CSS可以很方便地动态改变文本的属性,从而可制作出动态地使文字变大、缩小、改变文字颜色、改变文本的背景、字间距、行间距等等网页特效,一切都在你的掌握之中。是不是有点玄?事实就是如此。那一定很复杂吧?不!看完本文,你就会明白,原来这么简单。
请看下面的示例:

一、动态改变文字大小
这个例子的效果是:一段文本,当鼠标在这段文本上,文字变大,鼠标离开时又恢复原样。
制作方法:
1、在Dreamweaver3中,用CSS面板定义两个CSS的class,一个取名为“style1”定义为大号字(18px);另一个取名为“style2”,定义为小号字(12px)。获得的CSS代码如下:
<style type="text/css">
<!--
.style1 { font-size:18px}
.style2 { font-size:12px}
-->
</style>
不使用Dreamweaver的网友可把上述代码直接复制到网页代码的<head>与</head>之间。
2、 在这段文字的<P>标记中加入这段代码:onmouseover="this.className=''style1''" onmouseout= "this.className=''style2''"。至此,制作完成,能产生效果的那段文字的源代码是这样的:
<p onmouseover="this.className=''style1''" onmouseout="this.className=''style2''"><font color="#FF0000">鼠标在这段文字上,文字变大,鼠标离开时变小。</font></p>
不使用Dreamweaver的网友只要把代码改成上面这样就行了,预览一下就可看到实际效果了。

二、同时动态地改变文字的大小、颜色、加粗
这个例子的效果是:鼠标在文字上,文字的大小、颜色发生改变且加粗,鼠标离开时恢复原样。
这个例子的制作方法与例一相同,不同的只是在CSS中定义了不同的文字属性,所以制作方法不再重复。在<head>与</head>之间增加的CSS代码为:
<style type="text/css">
<!--
.style1 { font: bold 16px ; color: #0000FF}
.style2 { font-size:12px; color:#00ff00}
-->
</style>
制作完成,能产生效果的那段文字的源代码是这样的:
<p class="style4" onmouseover="this.className=''style1''" onmouseout="this.className=''style2''">鼠标在这段文字上,改变文字的大小、颜色、加粗,鼠标离开时恢复原 样。</p>

三、动态改变部分文本的背景
这个例子的效果是:当鼠标移到某行文本上,这行一部分文本的背景改变了,而本行的另一段背景却不变。
这个例子与上面的例子在制作方法上有点改变,上面的例子都是对整段文本的属性进行改变,所以把触发事件加载在“P”标记上;而本例是只改变一段文本的一部分的背景颜色,所以应先用"Span"标记把要改变背景的文本括起来,然后把触发事件加载到“Span”标记上。
本例在<head>与</head>之间增加的CSS代码为:
<style type="text/css">
<!--
.style1 { background: #99CCFF}
.style2 { background: #FFFFFF}
-->
</style>
制作完成,能产生效果的那段文字的源代码是这样的:
<p><span class="style6" onmouseover="this.className=''style1''" onmouseout="this.className=''style1''">当鼠标移到这段文本上,背景改变了,</span>而本 行的另一段背景却不变。</p>

四、给超级链接动态加图标
这个例子的效果是:当鼠标移到某个超级链接上,它的左边会出现一个图象,鼠标移开,图象消失。
本例在制作方法上与上例相同,都是改变文本的背景,但在制作时要注意几点:
1、在设置CSS的背景时是选择图象背景,并在设置图象背景的“repeat”参数时要选择“no-repeat”(不平铺);
2、在设置超级链接时,在其左边要预留出图象的位置;
3、触发事件要加载在超级链接上。
本例在<head>与</head>之间增加的CSS代码为:
<style type="text/css">
<!--  
.style1 { background: url(image/dot.gif) no-repeat; }
.style2 { background: #FFFFFF}
-->
</style>
制作完成,能产生效果的那个超级链接的源代码是这样的:
<a href="#" onmouseover="this.className=''style1''" onmouseout="this.className=''style2''">将鼠标移动过来</a>

通过动态改变文本的CSS属性,还可以做出许多特效,但方法基本相同,不再一一例举了,掌握了方法,你就可以发挥想象力去创作了。

(0)

相关推荐

  • word-wrap在firefox中不起作用的解决方法

    完整的css代码为 复制代码 代码如下: word-wrap:break-word; overflow:hidden; 这段代码应添加到td标签的样式中.另外,应该在外层的table标签中添加样式 复制代码 代码如下: table-layout:fixed;

  • CSS属性 - white-space 空白属性使用说明

    CSS属性 - white-space 空白属性说明 该CSS属性用来处理空白. 值:normal | pre | nowrap | inherit 可用值 值的说明  normal 缺省值.文本自然换行.如果超过元素宽度,内容自然换到下一行.  nowrap 不允许换行.  pre 保留换行和空白.这个值只有当你声明了!DOCTYPE,且 IE 6 以上版本才支持. 在 HTML 文件里,空白,比如换行符 (line breaks). 空格 (spaces). 制表符 (tabs),都被自动截

  • font和line-height之CSS代码书写顺序不同,导致显示效果不一样

    无意中发现,针对同一HTML标记,在CSS中同时应用了font和line-height属性时,就得小心了,这二者的书写顺序不一样,会导致显示效果不同. 即: >>> 如果先写font,再写line-height,显示效果正常 >>> 如果先写line-height,再写font,则line-height定义的效果会丢失,在IE.Firefox.Opera下都出现这种BUG 具体效果请看以下代码: <p>h1:</p> <h1 style=&

  • word-wrap

    word-wrap : normal | break-word 参数: normal : 允许内容顶开指定的容器边界break-word : 内容将在边界内换行.如果需要,词内换行(word-break)也行发生 说明: 设置或检索当当前行超过指定容器的边界时是否断开转行.对应的脚本特性为wordWrap.请参阅我编写的其他书目. 示例: div { word-wrap: break-word; } word-break : normal | break-all | keep-all 参数: n

  • css white-space:nowrap属性用法(可以强制文字不换行输出)

    强制不换行,直接使用white-space:nowrap即可.CSS设置不转行: overflow:hidden 隐藏 white-space:normal 默认 pre 换行和其他空白字符都将受到保护 nowrap 强制在同一行内显示所有文本,直到文本结束或者遭遇 br 对象例:强制不换行 复制代码 代码如下: div{white-space:nowrap;}

  • 从零学CSS系列之文本属性

    1.line-height 可以给某个元素指定一个不带单位的缩放因子,这样它的后代元素就会继承这个缩放因子,再根据自身的字号大小来计算自己的行高(line-height)值, 复制代码 代码如下: body {  font-size: 12px;  line-height: 1.5;} h1 {  font-size: 36px;} 这里,body 的 line-height 是 18px(12 * 1.5),而 h1 的 line-height 则是 54px(36 * 1.5). 就算使用

  • 用CSS动态控制文本属性

    本篇详细介绍了用CSS动态控制文本属性的文章主题,利用CSS的属性值可动态改变的特点,定义文本的多种属性值,再用一个事件来触发,一旦事件发生,则改变文本属性值,从而达到预期目的. 用CSS可以很方便地动态改变文本的属性,从而可制作出动态地使文字变大.缩小.改变文字颜色.改变文本的背景.字间距.行间距等等网页特效,一切都在你的掌握之中.是不是有点玄?事实就是如此.那一定很复杂吧?不!看完本文,你就会明白,原来这么简单. 请看下面的示例: 一.动态改变文字大小 这个例子的效果是:一段文本,当鼠标在这

  • 浅谈JS对html标签的属性的干预以及对CSS样式表属性的干预

    -任何标签的任何属性都可以修改! -HTML里是怎么写, JS就怎么写 以下是一段js 作用于 css 的 href的 代码 <link id="l1" rel="stylesheet" type="text/css" href="css1.css" rel="external nofollow" /> <script> function skin1() { var oL=docum

  • CSS中position属性之fixed实现div居中

    position 属性规定元素的定位类型.这个属性定义建立元素布局所用的定位机制.任何元素都可以定位,不过绝对或固定元素会生成一个块级框,而不论该元素本身是什么类型.相对定位元素会相对于它在正常流中的默认位置偏移. 上下左右 居中 div{ position:fixed; margin:auto; left:0; right:0; top:0; bottom:0; width:200px; height:150px; } 如果只需要左右居中,那么把 bottom:0; 或者 top:0; 删掉即

  • 在vue中动态修改css其中一个属性值操作

    我就废话不多说了,大家还是直接看代码吧~ <template> <!--此div的高度取屏幕可视区域的高度--> <div class="hello" :style="{'height':getClientHeight}"> <h5>{{ msg }}</h5> </div> </template> <script> export default { data() { r

  • Javascript获取CSS伪元素属性的实现代码

    CSS伪元素非常强大,它经常被用来创建CSS三角形提示,使用CSS伪元素可以实现一些简单的效果但又不需要增加额外的HTML标签.有一点就是Javascript无法获取到这些CSS属性值,但现在有一种方法可以获取到: 看看下面的CSS代码: .element:before { content: 'NEW'; color: rgb(255, 0, 0); }.element:before { content: 'NEW'; color: rgb(255, 0, 0); } 为了获取到.element

  • javascript下操作css的float属性的特殊写法

    使用js操作css属性的写法是有一定的规律的: 1.对于没有中划线的css属性一般直接使用style.属性名即可.  如:obj.style.margin,obj.style.width,obj.style.left,obj.style.position等. 2.对于含有中划线的css属性,将每个中划线去掉并将每个中划线后的第一个字符换成大写即可.  如:obj.style.marginTop,obj.style.borderLeftWidth,obj.style.zIndex,obj.styl

  • CSS教程之css选择器 、属性、值

    body {      font-size: 0.8em;      color: navy;  }  上面的意思是为body选择器设置font-size字体大小和color字体颜色. 所以基本的,当它作用与HTML页面时,在body标签(整个窗口中的内容)之间的文字颜色是navy字体大小是0.8ems. 长度和百分比 CSS里面有许多属性值要指定单位,但有些基本单位被使用在一些属性上,在这之前值得属性下它们.  em比如font-size:2em给于字体计算出的大小,所以2em就是实际字体大小

  • CSS渐变文本效果的两种方法比较

    是否想不用photoshop来创建一个带渐变的标题文字吗? 这里用一个简单的css技巧来向你展示如何仅仅使用css和png图片来制造这种效果. 经测试这种方法适合大多数主流浏览器.当然, IE6需要一个支持透明PNG的Hack(值得庆幸的是微软正在极力的将用户的IE6自动升级到IE7^.^, 延伸阅读:Warning: An IE7 Auto-Update Is Coming Soon) 优势 这是纯粹的css技巧,没有使用任何ja脚本或者flash, 并且它可以在大多数浏览器上正常工作(IE6

随机推荐