Почему анимация не отображается, когда размер окна маленький?

У меня возникла проблема, с которой я не могу справиться. Когда окно браузера полноэкранное, анимация "PROSCHE" функционирует так, как нужно. Однако, как только я уменьшаю размер окна, текст смещается влево и анимация перестает работать корректно. Не могли бы вы помочь мне понять, что может быть не так? Вот код, который я использую: <br/><br/><pre><code class="html">&lt;main&gt;
            &lt;div class="name-center"&gt;
            &lt;h1 class="text-center"&gt;PROSCHE&lt;/h1&gt;
            &lt;h2 class="text-undercenter"&gt;DELAY&lt;/h2&gt;
        &lt;/div&gt;
        &lt;/main&gt;</code></pre> <br/><br/><pre><code class="css">main {
	position: relative;
	padding: 0 auto;
	margin: 0 auto;
}

.text-center {
	text-align: center;
	font-size: 72px;
	background: linear-gradient(to right, #FFF 20%, rgb(157, 255, 0) 40%, rgb(179, 255, 0) 60%, #FFF 80%);
	background-size: 200% auto;

	color: #000;
	background-clip: text;
	text-fill-color: rgba(128, 128, 128, 0.082);
	-webkit-background-clip: text;
	-webkit-text-fill-color: rgba(128, 128, 128, 0.192);
	
	animation: shine 5s linear infinite; }

@keyframes shine {
	  to {
		background-position: 200% auto;
	  }
	}
}

.text-undercenter {
	text-align: center;
	margin-top: 20px;
	background: linear-gradient(to right, #FFF 20%, rgb(0, 195, 255) 40%, rgb(0, 247, 255) 60%, #FFF 80%);
	background-size: 200% auto;

	color: #000;
	background-clip: text;
	text-fill-color: rgba(128, 128, 128, 0.158);
	-webkit-background-clip: text;
	-webkit-text-fill-color: rgba(128, 128, 128, 0.192);
	
	animation: shine 5s linear infinite; }

@keyframes shine {
		to {
		  background-position: 200% center;
		}
	  }</code></pre>
  • 27 ноября 2024 г. 7:23
Ответы на вопрос 2
Чтобы разобраться с вашей проблемой, давайте рассмотрим несколько возможных причин, по которым анимация может работать некорректно на небольшом размере окна браузера.

1. **Неустановленный размер контейнера**: Если `.name-center` не имеет установленной ширины или минимальной ширины, то при уменьшении размера окна элементы внутри могут смещаться. Убедитесь, что у блока, содержащего текст, установлены правильные стили. Например, вы можете задать ему `width: 100%;` или ограничить максимальную ширину с помощью `max-width`.

   ```css
   .name-center {
       width: 100%; /* или max-width: 600px; при необходимости */
       text-align: center;
   }
   ```

2. **Проблемы с центровкой**: Убедитесь, что вы используете правильные стили для центрирования вашего текста. Так как у вас уже установлено `text-align: center`, это должно работать. Но если блок `.name-center` не занимает 100% ширины, анимация может казаться смещенной. Проверьте отступы (`padding`) и внешние отступы (`margin`) у всех элементов.

3. **Медиа-запросы**: Если вы не используете медиа-запросы для изменения стилей при изменении размера окна, тогда размеры и позиционирование элементов могут остаться прежними. Рассмотрите возможность добавления медиа-запросов, чтобы адаптировать размеры шрифтов и отступы для меньших экранов.

   ```css
   @media (max-width: 600px) {
       .text-center {
           font-size: 36px; /* Уменьшите размер шрифта для меньших экранов */
       }
       .text-undercenter {
           font-size: 24px; /* Уменьшите размер шрифта для меньших экранов */
       }
   }
   ```

4. **Проблемы с анимацией**: Убедитесь, что анимация правильно настроена. В вашем коде есть два определения анимации `@keyframes shine` — одно для `.text-center`, другое для `.text-undercenter`. Вам следует объединить эти определения или убедиться, что вы используете разные имена, если они должны отличаться. Например, вы можете использовать одно и то же имя для обоих.

5. **Проблемы с родительским элементом**: Если у вас есть внешние стили или скрипты, которые меняют размер или позиционируют элементы, это также может влиять на поведение анимации.

После внесения этих изменений проверьте, продолжает ли анимация работать при уменьшении размера окна. Если проблема не исчезнет, пожалуйста, предоставьте дополнительные подробности о других стилях или структуре HTML, которые могут влиять на поведение анимации.
У меня в песочнице все отлично работает, надпись PROSCHE анимирована и всегда по центру на всех разрешениях
Похожие вопросы