Marquee начало в центре слева

Я ищу способ начать marquee (текстовый слайдер) от центра влево.

Потому что, если я обновлю свою страницу, выделение будет пустым.

1 ответ

Решение

Обратите внимание, что marquee устарел в HTML5, и его события не очень хорошо поддерживаются.

Тем не менее, один из способов будет использовать text-indent, но это делает прокрутку слегка смещенной. Чтобы обойти это, вы можете медленно уменьшить его свойство на setInterval, Посмотрите эту скрипку или запустите следующий фрагмент:

var textIndentPercent = 50;
var marqueeCenteringInterval = setInterval(function() {
    console.log(document.getElementById('my-marquee'));
    console.log(textIndentPercent);
    console.log(document.getElementById('my-marquee').style.textIndent);
    document.getElementById('my-marquee').style.textIndent = -textIndentPercent + '%';
    textIndentPercent -= 0.1;
    if (textIndentPercent < 0) {
        document.getElementById('my-marquee').style.textIndent = '0px';
        clearInterval(marqueeCenteringInterval);
    }
}, 100);
<marquee id="my-marquee" style="">This is basic example of marquee</marquee>

Другие вопросы по тегам