Единый форум поддержки

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Единый форум поддержки » Проблемы с форумом » Перестала работать бегущая строка в объявлении


Перестала работать бегущая строка в объявлении

Сообщений 1 страница 6 из 6

1

Адрес форума: https://kypyansk.rolevaya.info/

Проблема: В браузере Хром перестала работать бегущая строка размещённая в объявлении форума. Как исправить ? В браузере Edge бегущая строка работает.

Код:
<marquee onMouseOver="this.stop()" onMouseOut="this.start()" width="100%" height="35" scrollamount="7"> <span style="color: gray; font-size: 25px;"> <img src="https://forumstatic.ru/files/картинка.png" width="25" height="20" > текст </span></marquee>

Отредактировано 103 (Сегодня 17:22:43)

0

2

103 написал(а):

Адрес форума: https://kypyansk.rolevaya.info/

Проблема: Перестала работать бегущая строка в объявлении. Как исправить ?

Код:
<marquee onMouseOver="this.stop()" onMouseOut="this.start()" width="100%" height="35" scrollamount="7"> <span style="color: gray; font-size: 25px;"> <img src="https://forumstatic.ru/files/картинка.png" width="25" height="20" > текст </span></marquee>

В Google Chrome и Яндекс Браузер работает.

Подскажите, какой браузер используете?
Работает ли в режиме инкогнито? Проверьте  :)

флуд

форум тяжело конечно открывается, очень тяжело, думал мода на такие форумы прошли...

0

3

Spinner написал(а):

В Google Chrome и Яндекс Браузер работает.

Подскажите, какой браузер используете?
Работает ли в режиме инкогнито? Проверьте  :)

флуд

форум тяжело конечно открывается, очень тяжело, думал мода на такие форумы прошли...

в режиме инкогнито тоже не работает

0

4

У меня на вашем форуме работает. Проверьте, у вас работает marquee на странице в блоке Example? (возможно нужно будет нажать Play)
https://developer.mozilla.org/ru/docs/W … e#examples

Он хоть и является устаревшим, но современные браузеры его до сих поддерживают. Больше похоже на проблему с самим браузером. Тем не мнее, рекомендуется использовать на основе CSS, примерно так:

Код:
<div class="marquee-container">
  <div class="marquee-text">Движущийся текст здесь</div>
</div>

<style>
.marquee-container {
  overflow: hidden;
  white-space: nowrap;
}

.marquee-text {
  display: inline-block;
  padding-left: 100%;
}
/* Задаём параметры для анимации: 10 секунд (если нужно медленнее - уменьшите значение */
.marquee-text {
  animation: marquee 10s linear infinite;/
}

@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-100%); }
}

/* Останавливаем анимацию при наведении на текст */
.marquee-container:hover .marquee-text {
  animation-play-state: paused;
}
</style>

[html]<div class="marquee-container">
  <div class="marquee-text">Движущийся текст здесь</div>
</div>

<style>
.marquee-container {
  overflow: hidden;
  white-space: nowrap;
}

.marquee-text {
  display: inline-block;
  padding-left: 100%;
}
/* Задаём параметры для анимации: 10 секунд (если нужно медленнее - уменьшите значение */
.marquee-text {
  animation: marquee 10s linear infinite;/
}

@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-100%); }
}

/* Останавливаем анимацию при наведении на текст */
.marquee-container:hover .marquee-text {
  animation-play-state: paused;
}
</style>[/html]

+2

5

Reysler спасибо так работает.
<span style="color: gray; font-size: 25px;"> цвет движущегося текста, размер движущегося текста, добавить в код

Отредактировано 103 (Сегодня 22:15:47)

0

6

[html]<head>
<meta charset="UTF-8">
<style>
  /* Настройки по умолчанию */
  .modern-marquee {
    /* 1. Основные стили текста */
    --text-color: #333;          /* Цвет текста */
    --text-size: 24px;           /* Размер шрифта */
    --text-font: 'Arial', sans-serif; /* Шрифт */
    --text-weight: bold;         /* Жирность */
   
    /* 2. Настройки анимации */
    --anim-speed: 15s;           /* Скорость (чем больше число, тем медленнее) */
    --anim-direction: left;      /* Направление: 'left' или 'right' */
   
    /* Базовые стили контейнера */
    display: block;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    background: #f0f0f0; /* Фон для примера */
    padding: 10px 0;
  }

  .modern-marquee span {
    display: inline-block;
    color: var(--text-color);
    font-size: var(--text-size);
    font-family: var(--text-font);
    font-weight: var(--text-weight);
    padding-left: 100%; /* Начальная позиция за пределами экрана */
   
    /* Логика анимации */
    animation: scroll-text var(--anim-speed) linear infinite;
  }

  /* Остановка при наведении */
  .modern-marquee:hover span {
    animation-play-state: paused;
  }

  /* --- Логика направлений --- */
 
  /* Движение ВЛЕВО (Стандарт) */
  @keyframes scroll-text-left {
    0% { transform: translateX(0); }
    100% { transform: translateX(-100%); }
  }

  /* Движение ВПРАВО */
  @keyframes scroll-text-right {
    0% { transform: translateX(-100%); } /* Начинаем слева за экраном */
    100% { transform: translateX(0); }   /* Едем вправо до конца */
  }

  /* Применяем нужную анимацию в зависимости от переменной */
  .modern-marquee[data-direction="left"] span {
    animation-name: scroll-text-left;
    padding-left: 100%;
    padding-right: 0;
  }

  .modern-marquee[data-direction="right"] span {
    animation-name: scroll-text-right;
    padding-left: 0;
    padding-right: 100%; /* Чтобы выезжал справа */
  }

</style>
</head>
<body>

<!-- Пример 1: Обычный текст (влево) -->
<h3>Классический вид (Влево)</h3>
<div class="modern-marquee" data-direction="left">
  <span>Это бегущая строка движется влево! Можно менять шрифт и цвет.</span>
</div>

<br><br>

<!-- Пример 2: Настройки через CSS переменные (в стиле атрибута style) -->
<h3>Красный текст, шрифт Courier, движение ВПРАВО</h3>
<div class="modern-marquee"
     data-direction="right"
     style="--text-color: red;
            --text-font: 'Courier New', monospace;
            --text-size: 30px;
            --anim-speed: 8s;">
  <span>Движение вправо! Скорость увеличена, шрифт изменен.</span>
</div>

<br><br>

<!-- Пример 3: Градиентный текст и свой шрифт -->
<h3>Стильный градиент</h3>
<div class="modern-marquee"
     data-direction="left"
     style="--text-size: 40px;
            --text-font: 'Verdana', sans-serif;
            --anim-speed: 20s;">
  <!-- Для градиента используем background-clip -->
  <span style="background: linear-gradient(45deg, blue, purple); -webkit-background-clip: text; -webkit-text-fill-color: transparent;">
    Современный дизайн с градиентом и плавной анимацией.
  </span>
</div>

</body>
[/html]



Инструкция

Код
Код:
<head>
<meta charset="UTF-8">
<style>
  /* Настройки по умолчанию */
  .modern-marquee {
    /* 1. Основные стили текста */
    --text-color: #333;          /* Цвет текста */
    --text-size: 24px;           /* Размер шрифта */
    --text-font: 'Arial', sans-serif; /* Шрифт */
    --text-weight: bold;         /* Жирность */
    
    /* 2. Настройки анимации */
    --anim-speed: 15s;           /* Скорость (чем больше число, тем медленнее) */
    --anim-direction: left;      /* Направление: 'left' или 'right' */
    
    /* Базовые стили контейнера */
    display: block;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    background: #f0f0f0; /* Фон для примера */
    padding: 10px 0;
  }

  .modern-marquee span {
    display: inline-block;
    color: var(--text-color);
    font-size: var(--text-size);
    font-family: var(--text-font);
    font-weight: var(--text-weight);
    padding-left: 100%; /* Начальная позиция за пределами экрана */
    
    /* Логика анимации */
    animation: scroll-text var(--anim-speed) linear infinite;
  }

  /* Остановка при наведении */
  .modern-marquee:hover span {
    animation-play-state: paused;
  }

  /* --- Логика направлений --- */
  
  /* Движение ВЛЕВО (Стандарт) */
  @keyframes scroll-text-left {
    0% { transform: translateX(0); }
    100% { transform: translateX(-100%); }
  }

  /* Движение ВПРАВО */
  @keyframes scroll-text-right {
    0% { transform: translateX(-100%); } /* Начинаем слева за экраном */
    100% { transform: translateX(0); }   /* Едем вправо до конца */
  }

  /* Применяем нужную анимацию в зависимости от переменной */
  .modern-marquee[data-direction="left"] span {
    animation-name: scroll-text-left;
    padding-left: 100%; 
    padding-right: 0;
  }

  .modern-marquee[data-direction="right"] span {
    animation-name: scroll-text-right;
    padding-left: 0;
    padding-right: 100%; /* Чтобы выезжал справа */
  }

</style>
</head>
<body>

<!-- Пример 1: Обычный текст (влево) -->
<h3>Классический вид (Влево)</h3>
<div class="modern-marquee" data-direction="left">
  <span>Это бегущая строка движется влево! Можно менять шрифт и цвет.</span>
</div>

<br><br>

<!-- Пример 2: Настройки через CSS переменные (в стиле атрибута style) -->
<h3>Красный текст, шрифт Courier, движение ВПРАВО</h3>
<div class="modern-marquee" 
     data-direction="right"
     style="--text-color: red; 
            --text-font: 'Courier New', monospace; 
            --text-size: 30px; 
            --anim-speed: 8s;">
  <span>Движение вправо! Скорость увеличена, шрифт изменен.</span>
</div>

<br><br>

<!-- Пример 3: Градиентный текст и свой шрифт -->
<h3>Стильный градиент</h3>
<div class="modern-marquee" 
     data-direction="left"
     style="--text-size: 40px; 
            --text-font: 'Verdana', sans-serif;
            --anim-speed: 20s;">
  <!-- Для градиента используем background-clip -->
  <span style="background: linear-gradient(45deg, blue, purple); -webkit-background-clip: text; -webkit-text-fill-color: transparent;">
    Современный дизайн с градиентом и плавной анимацией.
  </span>
</div>

</body>
Настройка

1. CSS Переменные (--variable-name):
Вы можете задать параметры прямо в HTML теге style="...".
--text-color: Цвет текста (можно писать red, #000, rgb(...)).
--text-size: Размер шрифта.
--text-font: Название шрифта.
--anim-speed: Скорость (в секундах).

2. Атрибут направления (data-direction):
В HTML добавлен атрибут data-direction="left" или data-direction="right".
Если поставить left — текст едет справа налево.
Если поставить right — текст едет слева направо.

3.Пауза при наведении:
Сохранена функция :hover, чтобы пользователь мог прочитать текст, наведя на него мышку.

Бонус: Как сделать "Бесшовную" строку

Когда текст "уезжает", появляется пустое место, и только потом он появляется снова. Чтобы сделать бесконечную ленту без разрывов (как на новостных сайтах), текст нужно продублировать.
Самый простой современный способ сделать это без сложного JS — просто написать текст дважды внутри тега span:

Код:
<div class="modern-marquee" data-direction="left">
  <span>
     Ваш текст здесь &nbsp;&nbsp;&nbsp; Ваш текст здесь &nbsp;&nbsp;&nbsp; 
     Ваш текст здесь &nbsp;&nbsp;&nbsp; Ваш текст здесь
  </span>
</div>

Примечание: Для идеальной бесшовности (когда текст заканчивается и сразу начинается тот же самый без пробелов) обычно используют JavaScript для клонирования элемента, но дублирование вручную — самый надежный CSS-способ.

Отредактировано Merlin777 (Сегодня 22:32:43)

0


Вы здесь » Единый форум поддержки » Проблемы с форумом » Перестала работать бегущая строка в объявлении