想实现文字滚动效果,但是卡在滚动这里,具体问题如下
html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>文字滚动效果---练习title>
<link rel="stylesheet" href="./roll.css" />
head>
<body>
<div class="top">
<div class="content clearfix">
<div class="announce fl">最新公告div>
<ul class="news fl">
<li>把大象装冰箱总共分几步?li>
<li>1. 邓哥打开冰箱门li>
<li>2. 邓哥把大象放进去li>
<li>3. 邓哥关上冰箱门li>
ul>
div>
div>
<script src="./roll.js">script>
body>
html>
/* 全局 */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
ul {
list-style: none;
}
/* 功能 */
.clearfix::after {
clear: both;
content: "";
display: block;
}
.fl {
float: left;
}
.fr {
float: right;
}
/* 各自 */
.content {
margin: 10px;
background: #bfedfc;
border-radius: 10px;
}
.announce {
margin: 25px 27px 25px 27px;
height: 26px;
line-height: 26px;
}
.news {
/* border: 1px solid black; */
height: 26px;
/* line-height: 26px; */
padding-left: 53px;
border-left: 2px solid rgb(204, 204, 204);
margin: 25px 0 25px 0;
overflow-y: auto;
}
.news li {
/* height: 21px; */
line-height: 26px;
}
感觉是边框和行高的问题,但是把边框和每个li的行高设置成对等,也是不行;
123这样的顺序滚动,每个 li 都可以正常看到
问题应该在你的滚动代码上,JS部分不清楚你如何产生滚动效果。每次都不是按顺序来,应该就是JS获取滚动内容插入的时候顺序发生错误。
有一些内容漏出来的缘故一般就是滚动距离跟实际li的高度不统一,可能是计算错误。需要确保JS滚动的高度跟li高度要完全一致,可以控制台输出js获取的高度,跟页面元素的实际高度对比一下是否一致。
Js代码你没放出来吗