专注Java教育14年 全国咨询/投诉热线:444-1124-454
赢咖4LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 HTML滚动条详解

HTML滚动条详解

更新时间:2021-03-22 17:45:56 来源:赢咖4 浏览1086次

在前端开发的页面设计当中,由于四象限中可能会有很多任务,可能会超出象限大小,所以需要加上滚动条。HTML滚动条一般是:overflow:auto这个属性;HTML滚动条标签是marquee,它是成对出现的标签,首标签<marquee>和尾标签</marquee>之间的内容就是滚动内容。<marquee>标签的属性主要有behavior、bgcolor、direction、width、height、hspace、vspace、loop、scrollamount、scrolldelay等,它们都是可选的。

html marquee标签的direction属性 :

文字滚动的方向,属性的参数值有down、left、right、up共四个单一可选值,分别代表滚动方向向下、向左、向右、向上。如下所示:

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

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

下面我们来简单介绍几种HTML滚动条代码:

1、向右滚动代码:

<div id="colee_right" style="overflow:hidden;width:760px;">

<table cellpadding="0" cellspacing="0" border="0">

<tr><td id="colee_right1" valign="top" align="center">

<table width="100%" border="0" cellspacing="0" cellpadding="0">

<tr>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

</tr>

</table>

</td>

<td id="colee_right2" valign="top"></td>

</tr>

</table>

</div>

<script>

var speed=30//速度数值越大速度越慢

//var colee_right2=document.getElementByIdx_x_x("colee_right2");

//var colee_right1=document.getElementByIdx_x_x("colee_right1");

//var colee_right=document.getElementByIdx_x_x("colee_right");

colee_right2.innerHTML=colee_right1.innerHTML

function Marquee4(){

if(colee_right.scrollLeft<=0)

colee_right.scrollLeft+=colee_right2.offsetWidth

else{

colee_right.scrollLeft--

}

}

var MyMar4=setInterval(Marquee4,speed)

colee_right.οnmοuseοver=function() {clearInterval(MyMar4)}

colee_right.οnmοuseοut=function() {MyMar4=setInterval(Marquee4,speed)}

</script>

<!--向右滚动代码结束-->

2、向左滚动代码:

<!--下面是向左滚动代码-->

<div id="colee_left" style="overflow:hidden; width:760px;">

<table cellpadding="0" cellspacing="0" border="0">

<tr><td id="colee_left1" valign="top" align="center">

<table cellpadding="2" cellspacing="0" border="0">

<tr align="center">

<td>

<table width="100%" border="0" cellspacing="0" cellpadding="0">

<tr>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

</tr>

</table>

</td>

</tr>

</table>

</td>

<td id="colee_left2" valign="top"></td>

</tr>

</table>

</div>

<script>

//使用div时,请保证colee_left2与colee_left1是在同一行上.

var speed=30//速度数值越大速度越慢

//var colee_left2=document.getElementByIdx_x("colee_left2");

//var colee_left1=document.getElementByIdx_x("colee_left1");

//var colee_left=document.getElementByIdx_x("colee_left");

colee_left2.innerHTML=colee_left1.innerHTML

function Marquee3(){

if(colee_left2.offsetWidth-colee_left.scrollLeft<=0)//offsetWidth 是对象的可见宽度

colee_left.scrollLeft-=colee_left1.offsetWidth//scrollWidth 是对象的实际内容的宽,不包边线宽度

else{

colee_left.scrollLeft++

}

}

var MyMar3=setInterval(Marquee3,speed)

colee_left.οnmοuseοver=function() {clearInterval(MyMar3)}

colee_left.οnmοuseοut=function() {MyMar3=setInterval(Marquee3,speed)}

</script>

<!--向左滚动代码结束-->

3、向上滚动代码:

<!--向上滚动代码开始-->

<div id="colee" style="overflow:hidden;height:400px;width:550px;">

<div id="colee1">

<table width="100%" border="0" cellspacing="0" cellpadding="0">

<tr>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

</tr>

</table>

</div>

<div id="colee2"></div>

</div>

<script>

var speed=30;

//var colee2=document.getElementByIdx_x("colee2");

//var colee1=document.getElementByIdx_x("colee1");

//var colee=document.getElementByIdx_x("colee");

colee2.innerHTML=colee1.innerHTML; //克隆colee1为colee2

function Marquee1(){

//当滚动至colee1与colee2交界时

if(colee2.offsetTop-colee.scrollTop<=0){

colee.scrollTop-=colee1.offsetHeight; //colee跳到最顶端

}else{

colee.scrollTop++

}

}

var MyMar1=setInterval(Marquee1,speed)//设置定时器

//鼠标移上时清除定时器达到滚动停止的目的

colee.οnmοuseοver=function() {clearInterval(MyMar1)}

//鼠标移开时重设定时器

colee.οnmοuseοut=function(){MyMar1=setInterval(Marquee1,speed)}

</script>

<!--向上滚动代码结束-->

4、向下滚动代码:

<div id="colee_bottom" style="overflow:hidden;height:253px;width:410px;">

<div id="colee_bottom1">

<table width="100%" border="0" cellspacing="0" cellpadding="0">

<tr>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

<td style="padding-left:10px;"><img src="aa.jpg" /></td>

</tr>

</table>

</div>

<div id="colee_bottom2"></div>

</div>

<script>

var speed=30

var colee_bottom2=document.getElementByIdx_x("colee_bottom2");

var colee_bottom1=document.getElementByIdx_x("colee_bottom1");

var colee_bottom=document.getElementByIdx_x("colee_bottom");

colee_bottom2.innerHTML=colee_bottom1.innerHTML

colee_bottom.scrollTop=colee_bottom.scrollHeight

function Marquee2(){

if(colee_bottom1.offsetTop-colee_bottom.scrollTop>=0)

colee_bottom.scrollTop+=colee_bottom2.offsetHeight

else{

colee_bottom.scrollTop--

}

}

var MyMar2=setInterval(Marquee2,speed)

colee_bottom.οnmοuseοver=function() {clearInterval(MyMar2)}

colee_bottom.οnmοuseοut=function() {MyMar2=setInterval(Marquee2,speed)}

</script>

最后,我们需要注意的是marquee元素的默认宽度与其父元素的宽度相等。如果marquee位于没有指定宽度的td内,你就需要明确设置marquee的宽度。如果marquee和td的宽度都没有指定,那么滚动字幕就将限定于1个像素宽。

HTML滚动条算是在使用HTML进行前端开发网站页面中的基本知识,在本站的HTML教程中也很频繁的讲到,我们如何将HTML滚动条设计的更加合理和规范,从而使网站页面更加流畅将是我们学习的重点。

 

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>