实现文字跑马灯效果

1.应用JS实现文字跑马灯效果:文字超过显示宽度每间隔1s自动向左滚动显示,话不多说,请看代码
<!doctype html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>
    <meta name="format-detection" content="telephone=no,email=no,date=no,address=no">
    <title>js实现文字超过显示宽度每间隔1s自动向左滚动显示</title>
    <style type="text/css">
        *{ margin:0; padding:0;}
        body{font:12px/1 '微软雅黑';}
        .wrapper{font-size: 0.85rem; color: #333; padding-top: 0.75rem; margin: 0 0.75rem; white-space: nowrap; overflow: hidden;width: 300px;}
        .inner{ width:1000px;overflow:hidden;}
        .inner p{ display:inline-block;}
    </style>
</head>
<body>
<div id="wrapper" class="wrapper">
    <div class="inner">
        <p class="txt">文字如果超出了宽度自动向左滚动文字如果超出了宽度自动向左滚动。</p>
    </div>
</div>
<script>
    var wrapper = document.getElementById('wrapper');
    var inner = wrapper.getElementsByTagName('div')[0];
    var p = document.getElementsByTagName('p')[0];
    var p_w = p.offsetWidth;
    var wrapper_w = wrapper.offsetWidth;
    window.οnlοad=function fun(){
        if(wrapper_w > p_w){ return false;}
        inner.innerHTML+=inner.innerHTML;
        setTimeout("fun1()",2000);
    };
    function fun1(){
        if(p_w > wrapper.scrollLeft){
            wrapper.scrollLeft++;
            setTimeout("fun1()",30);
        }
        else{
            setTimeout("fun2()",2000);
        }
    }
    function fun2(){
        wrapper.scrollLeft=0;
        fun1();
    }
</script>
</body>
</html>
2.应用css实现跑马灯和...效果

桌面平台的开发中,内容超出设定区域的大小时,我们常用的操作有三种,一个是显示,一个是隐藏,一个是出现滚动条。

在手机平台的开发中,我们常用的操作也有三种,第一是隐藏,第二是显示“。。。”,第三种是滚动显示。这篇文章主要介绍后两种的用法。

现阶段做手机开发,针对的智能手机主要是iPhone和Android,用的浏览器分别是safari和chrome。都是webkit内核,所以下面的实例代码也会针对webkit内核来写。(同时要注意一点,在浏览器和虚拟机内webview引入html时的展现效果是不同的)

第一:超出显示“...”

用到命令 text-overflow : clip | ellipsis  文本超出:截断|省略

但这一条命令是看不到效果的,需要另外两条命令配合使用,让文本能够溢出,第一个是强制一行内显示,white-space:nowrap;第二个是溢出内容隐藏,overflow:hidden;

<!DOCTYPE html>
<html >
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>process msmj</title>
    <style>
        h1 {color:rgba(250,100,100,0.7);height:40px;line-heihgt:40px;width:500px;
            overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
    </style>
</head>
<body>
<h1>梨花院落溶溶月,柳絮池塘淡淡风。</h1>
</body>
</html>

第二:超出跑马等效果

老的前端开发人员对于marquee标签肯定不陌生,一个被淘汰的标签,被刚入门的新手所喜爱,因为能通过一个简单的标签做出动态的效果。但是在实际应用上的局限性和效果的过时,使这个标签退出历史舞台,大家纷纷改用js来实现无间断滚动等效果。

新的CSS3 marquee设置,可以说功能强大了很多,更加易操作,用简单的代码解决了js中比较纠结的字符长度判断等难题。强烈推荐大家使用。

对于这个属性的定义,W3C标准用法和webkit内核浏览器的支持用法并不相同,由于我们立足实战实用,所以这里只介绍好用的。可用的。

我们需要四句常用命令:

overflow:-webkit-marquee;//指定溢出时滚动。

-webkit-marquee-style:scroll | slide | alternate; //跑马灯样式,分三种。scroll,从一端滚动到另一端,内容完全滚入(消失)时重新开始。slide,从一端滚到另一端,内容接触到另一端后,立马重新开始。alternate,内容不跑到显示区域外,在里面来回碰壁反弹。这里主要用第一种。

-webkit-marquee-repetition:infinite | number;// 跑马灯跑的次数,infinite 为无限多次,不结束。或者可以用正整数设置滚动的次数。

-webkit-marquee-direction:up | down | left | right; //跑动的方向,这个要注意结合实际情况,即实际你操作的标签文本流溢出在哪个方向溢出。

-webkit-marquee-speed:slow | normal | fast;//跑动的速度设置。

实例:

<!DOCTYPE html>

<html >

    <head>

        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

        <title>process msmj</title>

        <style>

        h1 {color:rgba(250,100,100,0.7);height:40px;line-heihgt:40px;width:400px;

       overflow: -webkit-marquee;

-webkit-marquee-style: scroll;

-webkit-marquee-repetition: infinite;

-webkit-marquee-direction: up;

-webkit-marquee-speed:slow;

border:1px #ccc solid;

}

        </style>

</head>

    <body>

       <h1>梨花院落溶溶月,柳絮池塘淡淡风。</h1>

    </body>

</html>
可是我测试的时候没有效果!!!

这里的例子是竖向超出,竖向滚动的。不用判断文本是否超出,超出多少,比用js控制简洁方便的多。推荐大家使用。

在桌面浏览器中时,当marquee-style为scroll时,不管是不是超出都会滚动,类似与之前的marquee标签。而实用alternate时,只有超出是才会滚动。但是在iPhone和iPad上开发,当系统为为5.0以下的,效果同桌面平台。当系统为5.0时,只有超出才会滚动。所以在做移动平台的开发上,这个效果还是非常实用的。

然后我使用这个标签就可以,代码如下:

<marquee direction="up" scrollamount="1" style="width: 210px;height: 100px" id="">
    <a href="#">纤云弄巧,飞星传恨,银汉迢迢暗度。</a><br />
    <a href="#">金风玉露一相逢,便胜却、人间无数。</a><br />
    <a href="#">柔情似水,佳期如梦。忍顾鹊桥归路!</a><br />
    <a href="#">两情若是久长时,又岂在、朝朝暮暮。</a><br />
    <a href="#">千重劫,百世难,亘古匆匆,弹指间!</a><br />
    <a href="#">不死躯,不灭魂,震古烁今,无人敌!</a><br />
    <a href="#">待到阴阳逆乱时,以我魔血染青天!</a><br />
</marquee>





 

移动标签(marquee)属性详解

吉祥如意988/编辑 

marquee标签简介

 marquee标签:创建一个滚动的文本字幕,应用于文字、图片、表格。
基本语法:
<marquee>...</marquee>
属性汇总例句:
<marquee direction=up behavior=scroll loop=3 scrollamount=1 scrolldelay=10 bgcolor=#ccffff height=150 width=15% hspace=20 vspace=10 οnmοuseοver=this.stop() οnmοuseοut=this.start()><P align=center>此处输入滚动内容</P></marquee>

此处输入滚动内容

 

在基本语法中输入文字代码、代入图片代码、Flash动画代码和表格代码。
<marquee>这里是输入文字的地方,还可以放图片代码、Flash动画代码和gif动态小图代码。</marquee>

示例如下表:

文字

 图片

Flash动画

表格

LOVE 欢迎朋友 LOVE

HTML文字代码——移动文字(marquee 标签属性详解)-吉祥如意988-360图书馆

 

 
360图书馆  欢迎朋友光临!
marquee标签属性

direction

表示滚动的方向(默认为left)

behavior

表示滚动的方式

loop

决定滚动文字的滚动次数

scrollamount       

决定文字滚动的速度

scrolldelay

决定文字滚动的延时

bgcolor            

文字滚动范围的背景颜色

width和height      

决定滚动文字在页面中的矩形范围大小

hspace和vspace     

决定滚动矩形区域距周围的空白区域

οnmοuseοver=this.stop() 

οnmοuseοut=this.start()

表示当鼠标移上区域的时候滚动停止

表示当鼠标移开的时候又继续滚动

align  

水平对齐

valign 

垂直对齐方式

备注:marquee标签的属性都是可选的,根据需要而定制。

marquee标签属性详解

direction

属性

属性的参数值

示例代码

示例

direction="left"

向左(默认值)

 

<marquee direction="left">我向左滚动</marquee>

 

我向左滚动

direction="right"

向右

<marquee direction="right">我向右滚动</marquee> 我向右滚动

direction="up"
向上

 

<marquee direction="up">我向上滚动</marquee>

 

我向上滚动

direction="down"

向下

 

<marquee direction="down">我向下滚动</marquee>

 

我向下滚动

behavior

属性

属性的参数值

示例代码

示例

behavior="alternate"

来回滚动

<marquee behavior="alternate">我来回滚动</marquee> 我来回滚动

behavior="scroll"

单方向循环滚动

 

<marquee behavior="scroll">我单方向循环滚动</marquee>

 

<marquee behavior="scroll" direction="up" height="30">我改单方向向上循环滚动</marquee>

 

我单方向循环滚动

 

我改单方向向上循环滚动

behavior="slide"

只滚动一次

 

<marquee behavior="slide">我只滚动一次</marquee>

 

<marquee behavior="slide" direction="up">我改向上只滚动一次了</marquee>

 

我只滚动一次

 

我改向上只滚动一次了

loop

属性

属性的参数值

示例代码

示例

loop="2"

滚动2次

 

<marquee loop="2">我滚动2次。</marquee>

 

我滚动2次。

loop="infinite"

无限循环滚动

 

<marquee loop="infinite">我无限循环滚动。</marquee>

 

我无限循环滚动。

loop="-1"

无限循环滚动

 

<marquee loop="-1">我无限循环滚动。</marquee>

 

我无限循环滚动。

scrollamount速度属性

scrolldelay

延时属性

属性的参数值

示例代码

示例

scrollamount="100"

速度很快

 

<marquee scrollamount="100">我速度很快</marquee>

 

我速度很快

scrollamount="50"

速度慢了些

 

<marquee scrollamount="50">我慢了些。</marquee>

 

我慢了些。

scrolldelay="30"

小步前进

 

<marquee scrolldelay="30">我小步前进。</marquee>

 

我小步前进。

scrolldelay="1000" scrollamount="100"

大步前进

 

<marquee scrolldelay="1000" scrollamount="100">我大步前进。</marquee>

 

我大步前进。

bgcolor

属性

背景颜色

属性的参数值

示例代码

示例

 

bgcolor属性文字滚动范围的背景颜色,参数值是16进制(形式:#AABBCC或#AA5566等)或预定义的颜色名字(如red、yellow、blue等)。

 

<marquee behavior=="slide" direction="left" bgcolor="yellow">我的背景色是黄色的</marquee>

 

 

我的背景色是黄色的

 

width

height

属性

属性的参数值

示例代码

示例

 

width和height属性的作用决定滚动文字在页面中的矩形范围大小。
width属性用以规定矩形的宽度,height属性规定矩形的高度。
这两个属性的参数值可以是数字或者百分数,数字表示矩形所占的(宽或高)像素点数,百分数表示矩形所占浏览器窗口的(宽或高)百分比。

 

<marquee width="300" height="30" bgcolor="red">我宽300像素,高30像素。</marquee>

 

我宽300像素,高30像素。
 

hspace

vspace

属性

属性的参数值

示例代码

示例

 

hspace和vspace属性这两个属性决定滚动矩形区域距周围的空白区域。

 

 

<marquee width="300" height="30" vspace="10" hspace="10" bgcolor="red">我矩形边缘水平和垂直距周围各10像素。</marquee>

<marquee width="300" height="30" vspace="50" hspace="50" bgcolor="red">我矩形边缘水平和垂直距周围各50像素。</marquee>

 

我矩形边缘水平和垂直距周围各10像素。

 

 

我矩形边缘水平和垂直距周围各50像素。

 

 

onmouseover

=this.stop() onmouseout

=this.start()

属性

属性的参数值

示例代码

示例

表示当鼠标移上区域的时候滚动停止,当鼠标移开的时候又继续滚动。

 

<marquee οnmοuseοver=this.stop() οnmοuseοut=this.start()>表示当鼠标移上区域的时候滚动停止,当鼠标移开的时候又继续滚动。</marquee>

 

表示当鼠标移上区域的时候滚动停止,当鼠标移开的时候又继续滚动。

valign

align

对齐属性

这里是输入文字这里是输入文字这里是输入文字
valign 表示元素的垂直对齐方式,值可以是top,middle,bottom,默认为middle。这个属性在TABLE标签的表格处理文字。

<MARQUEE scrollAmount=3 behavior=alternate>

<TABLE

borderColor=#003333

align=center border=1>
<TBODY>
<TR><TD> 这个属性在TABLE标签的表格处理文字。
</TD>
</TR>
</TBODY>
</TABLE>

</MARQUEE>

 

这个属性在TABLE标签的表格处理文字。

align 表示元素的水平对齐方式,值可以是left,center,right,默认为left。这个属性决定滚动文字位于距形内边框的上下左右位置。

<marquee direction=up width="300" height="200" bgcolor=#ccffff><P align=center>这个属性决定滚动文字位于距形内边框的上下左右位置。</P></marquee>

 

这个属性决定

滚动文字位于

距形内边框

的上下左右位置。

  • 8
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值