У меня возникла проблема, transition
связанная с активацией свойства CSS при загрузке страницы.
Проблема в том, что когда я применяю color
transition
к элементу (например:), transition: color .2s
тогда, когда страница сначала загружает, мои элементы мигают с черного на свой собственный назначенный цвет.
Предположим, у меня есть следующий код:
CSS
p.green {
color: green;
transition: color .2s;
-moz-transition: color .2s;
-webkit-transition: color .2s;
-o-transition: color .2s;
}
p.green:hover {
color: yellow;
}
HTML
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN'
'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script src="js/main.js"></script>
<link href="css/main.css" rel="stylesheet" />
</head>
<body>
<p class="green">The Flashing Text</p>
</body>
</html>
При загрузке страницы моя p.green
воля исчезнет с black
до green
.
Я не хочу применять цветовой переход к :hover
псевдоклассу, так как это не применит переход onMouseLeave .
Меня действительно раздражает мигание текста на странице. До сих пор я избегал использования переходов, если они мне действительно не нужны, и даже поэтому я использую их с осторожностью. Было бы здорово, если бы для этого было действительно очевидное решение, которого я не вижу!
Это происходит в Google Chrome. Я не тестировал в других браузерах.
jsfiddle.net/ShyZp/2 (спасибо @Shmiddty)
window.onload = function(){document.body.className += " loaded";}
body.loaded p.green{transition:color .2s;}