Ответ 1
Использование transition: none
, как представляется, поддерживается (с конкретной настройкой для Opera) с учетом следующего HTML:
<a href="#" class="transition">Content</a>
<a href="#" class="transition">Content</a>
<a href="#" class="noTransition">Content</a>
<a href="#" class="transition">Content</a>
... и CSS:
a {
color: #f90;
-webkit-transition:color 0.8s ease-in, background-color 0.1s ease-in ;
-moz-transition:color 0.8s ease-in, background-color 0.1s ease-in;
-o-transition:color 0.8s ease-in, background-color 0.1s ease-in;
transition:color 0.8s ease-in, background-color 0.1s ease-in;
}
a:hover {
color: #f00;
-webkit-transition:color 0.8s ease-in, background-color 0.1s ease-in ;
-moz-transition:color 0.8s ease-in, background-color 0.1s ease-in;
-o-transition:color 0.8s ease-in, background-color 0.1s ease-in;
transition:color 0.8s ease-in, background-color 0.1s ease-in;
}
a.noTransition {
-moz-transition: none;
-webkit-transition: none;
-o-transition: color 0 ease-in;
transition: none;
}
Протестировано с Chromium 12, Opera 11.x и Firefox 5 на Ubuntu 11.04.
Конкретная адаптация к Opera - это использование -o-transition: color 0 ease-in;
, которое нацелено на те же свойства, что и в других правилах transition
, но устанавливает время перехода на 0
, что эффективно предотвращает заметный переход. Использование селектора a.noTransition
- это просто указать конкретный селектор для элементов без переходов.
Отредактировано, чтобы заметить, что @Frédéric Hamidi отвечает, используя all
(для Opera, по крайней мере) гораздо более кратким, чем листинг из каждого отдельного имени свойства, которое вы не хотите иметь.
Обновленная демонстрация JS Fiddle, показывающая использование all
в Opera: -o-transition: all 0 none
, после самоустранения @Frederic ответ.