Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 带有移动文本的横幅,根据宽度自动调整div大小并保留正文宽度_Javascript_Html_Css - Fatal编程技术网

Javascript 带有移动文本的横幅,根据宽度自动调整div大小并保留正文宽度

Javascript 带有移动文本的横幅,根据宽度自动调整div大小并保留正文宽度,javascript,html,css,Javascript,Html,Css,我试图用移动文本制作横幅。我想出了一种方法,但不幸的是,我的实现存在两个主要问题 我必须根据文本的长度手动调整px中的宽度值 它会使车身的宽度变大。我希望车身保持100%/与窗户大小相同 你知道我如何解决这两个问题,或者有没有更好的方法来实现这一点 让txtAnnounce=document.createElement('div'); txtAnnouncer.style='显示:块;位置:绝对位置;宽度:600px;高度:45px;顶部:65px;左:0px;颜色:白色;线高:45px;文本

我试图用移动文本制作横幅。我想出了一种方法,但不幸的是,我的实现存在两个主要问题

  • 我必须根据文本的长度手动调整px中的宽度值
  • 它会使车身的宽度变大。我希望车身保持100%/与窗户大小相同
  • 你知道我如何解决这两个问题,或者有没有更好的方法来实现这一点

    让txtAnnounce=document.createElement('div');
    txtAnnouncer.style='显示:块;位置:绝对位置;宽度:600px;高度:45px;顶部:65px;左:0px;颜色:白色;线高:45px;文本对齐:居中;';
    txtAnnouncer.innerHTML=“一些文本废话废话…适用于长文本的公告…”
    document.body.appendChild(txtAnnounce);
    让txt2=document.createElement('div');
    txt2.style='显示:块;位置:绝对位置;宽度:600px;高度:45px;顶部:65px;左:600px;颜色:白色;线高:45px;文本对齐:居中;';
    txtdannounce2.innerHTML=“一些文字废话废话…适合于长文字的公告…”
    文件.正文.附件(TXT2);
    设curLeft=0;
    设curLeft2=0;
    setInterval(函数(){
    卷曲--;
    curLeft2--;
    如果(卷曲长度<-600){
    curLeft=0;
    }
    if(curLeft2<0){
    curLeft2=600;
    }
    txtAnnounce.style.left=curLeft.toString()+'px';
    txt2.style.left=curLeft2.toString()+'px';
    }, 10);
    
    您甚至可以尝试CSS动画,并根据设备的视图端口定义容器大小

    overflow:hidden
    保留公告——公告容器中包含的文本

    。公告{
    背景:#008aff;
    填充:15px;
    颜色:白色;
    溢出:隐藏;
    }
    .公告--文本{
    位置:相对位置;
    左:100vw;
    空白:nowrap;
    动画:移动10秒无限;
    动画计时功能:线性;
    }
    @关键帧移动{
    从{左:100vw;}
    {左:-100vw;}//公告的最大长度
    }
    
    一些文字废话废话。。。适用于长文本的公告。。。。!
    
    如果您没有做任何事情,那么发布div的目的是什么?您正在将新元素附加到body中-如果您将它们附加到该元素并设置overflow:hidden,那么您的body宽度问题应该已经解决了。非常感谢:)我是一名学习HTML的iOS开发人员,对我来说,一切都有点不方便