Чтение онлайн

на главную - закладки

Жанры

CSS3 для веб-дизайнеров
Шрифт:

Теперь мы объявим неактивное состояние ссылки с небольшим отступом и светло-зеленым фоном и затем укажем темно-зеленый цвет при наведении (рис. 2.01):

a.foo {

padding: 5px 10px;

background: #9c3;

}

a.foo: hover {

background: #690;

}

Рис. 2.01. Обычное

состояние ссылки и: hover

Теперь наложим переход на это изменение. Переход сгладит и анимирует изменение в течение указанного промежутка времени (рис. 2.02).

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

Ради компактности будем использовать только те браузерные префиксы, которые сейчас работают в браузерах на движке WebKit (это Safari и Chrome). Позже добавим префиксы для Firefox и Opera.

a.foo {

padding: 5px 10px;

background: #9c3;

– webkit-transition-property: background;

– webkit-transition-duration: 0.3s;

– webkit-transition-timing-function: ease;

}

a.foo: hover {

background: #690;

}

В этом коде можно увидеть три составляющих перехода:

• 

transition-property
 – свойство, на которое будет накладываться переход (в этом случае – свойство background);

• 

transition-duration
 – продолжительность перехода (0,3 с);

• 

transition-timing-function
 – как быстро переход осуществляется с течением времени (ease).

Временные функции (мне следовало быть внимательнее на уроках математики)

Значение временной функции позволяет менять скорость перехода с течением времени одним из шести способов:

ease
,
linear
,
ease-in
,
ease-out
,
ease-in-out
и 
cubic-bezier
, который позволяет определить произвольную временную кривую.

Если вы, как и я, проспали все школьные уроки геометрии, не беспокойтесь. Я советую просто подставить каждое значение по очереди и увидеть, чем они отличаются друг от друга.

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

Если сомневаетесь, знайте: значения

ease
(значение по умолчанию) или
linear
прекрасно подходят для коротких переходов.

Задержка перехода

Можно сделать так, чтобы переход осуществлялся не сразу после того, как срабатывает связанное

с ним событие, но с некоторой задержкой. Например, сделаем так, чтобы переход цвета фона происходил через полсекунды после того, как ссылка попала в состояние hover. Такого поведения можно добиться свойством
transition-delay
.

a.foo {

padding: 5px 10px;

background: #9c3;

– webkit-transition-property: background;

– webkit-transition-duration: 0.3s;

– webkit-transition-timing-function: ease;

– webkit-transition-delay: 0.5s;

}

a.foo: hover {

background: #690;

}

Краткая форма записи

Можно существенно упростить объявление перехода (в котором нет задержки), пользуясь свойством transition. Такой синтаксис будет использоваться во всех остальных примерах этой книги.

a.foo {
 

padding: 5px 10px;

background: #9c3;

– webkit-transition: background 0.3s ease;

}

a.foo: hover {

background: #690;

}

Мы получили намного более компактное правило, которое дает точно такой же результат.

Краткая форма записи перехода с задержкой

Если нужно добавить полусекундную задержку в краткую запись перехода, ее продолжительность ставится в конец правила:

a.foo {

padding: 5px 10px;

background: #9c3;

– webkit-transition: background 0.3s ease 0.5s;

}

a.foo: hover {

background: #690;

}

Разумеется, эти замечательные переходы прекрасно действуют в браузерах, работающих на движке WebKit. Что насчет остальных?

Поддержка в браузерах

Как упоминалось ранее, переходы были изначально разработаны для движка WebKit и включены в Safari и Chrome начиная с версии 3.2, но Opera также поддерживает их начиная с 10.5 [5] . Поддержка заявлена и в Firefox 4.0 [6] .

Учитывая поддержку переходов на сегодняшний день и в ближайшем будущем, важно перечислять все требуемые браузерные префиксы, чтобы переходы работали в большем количестве браузеров по мере появления поддержки.

5

http://www.opera.com/docs/specs/presto23/css/transitions/

6

https://developer.mozilla.org/en/Css/Css_transitions

Поделиться:
Популярные книги

Адвокат Империи 3

Карелин Сергей Витальевич
3. Адвокат империи
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Адвокат Империи 3

Кротовский, может, хватит?

Парсиев Дмитрий
3. РОС: Изнанка Империи
Фантастика:
попаданцы
альтернативная история
аниме
7.50
рейтинг книги
Кротовский, может, хватит?

Дурная жена неверного дракона

Ганова Алиса
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Дурная жена неверного дракона

Вонгозеро

Вагнер Яна
1. Вонгозеро
Детективы:
триллеры
9.19
рейтинг книги
Вонгозеро

Ведьма Вильхельма

Шёпот Светлана
Любовные романы:
любовно-фантастические романы
8.67
рейтинг книги
Ведьма Вильхельма

Папина дочка

Рам Янка
4. Самбисты
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Папина дочка

Законы Рода. Том 6

Flow Ascold
6. Граф Берестьев
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Законы Рода. Том 6

Как я строил магическую империю 7

Зубов Константин
7. Как я строил магическую империю
Фантастика:
попаданцы
постапокалипсис
аниме
фантастика: прочее
5.00
рейтинг книги
Как я строил магическую империю 7

Лучший из худший 3

Дашко Дмитрий
3. Лучший из худших
Фантастика:
городское фэнтези
попаданцы
аниме
6.00
рейтинг книги
Лучший из худший 3

Штурмовик из будущего 3

Политов Дмитрий Валерьевич
3. Небо в огне
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Штурмовик из будущего 3

Последний попаданец 2

Зубов Константин
2. Последний попаданец
Фантастика:
юмористическая фантастика
попаданцы
рпг
7.50
рейтинг книги
Последний попаданец 2

Идеальный мир для Лекаря 14

Сапфир Олег
14. Лекарь
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 14

Безумный Макс. Поручик Империи

Ланцов Михаил Алексеевич
1. Безумный Макс
Фантастика:
героическая фантастика
альтернативная история
7.64
рейтинг книги
Безумный Макс. Поручик Империи

Вдова на выданье

Шах Ольга
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Вдова на выданье