Многие веб-мастера на своих сайтах в меню или на кнопках используют такой эффект, когда картинки меняются при наведении на них курсора мышки. Если вас интересует, как осуществить такой эффект, то в этой статье, я расскажу о трех способах, с помощью которых можно сделать так, чтобы картинка менялась при наведении на нее курсора мыши.
Использую чистый CSS, без JavaScript и jQuery.
Способ №1 – использование двух картинок
Подготовьте два изображения. Они должны быть одинаковых размеров, но различными по цвету.

knopka-1.png

knopka-2.png
Теперь вставим эти две кнопки в файл:
<html> <head> <meta charset="utf-8"> <title>Способ №1 - bloggood.ru</title> <style> a.rollover { background: url(knopka-1.png); /* рисунок, который увидим сразу */ display: block; /* Рисунок как блочный элемент */ width: 300px; /* Ширина рисунка */ height: 100px; /* Высота рисунка */ } a.rollover:hover { background: url(knopka-2.png); /* заменяемый рисунок при наведении мыши */ } </style> </head> <body> <p><a href="#" class="rollover"> </a></p> </body> </html>
[посмотреть пример] или [скачать исходник]
Способ №2 – использование одной картинки
Подготовьте одну картинку. Но на картинке должно быть два изображения кнопки разных по цвету.

knopka-3.png
Вы, наверное, задаете себе вопрос, как картинка будет меняться на другую, если она одна?! Легко, за счёт использования свойства background-position.
Замена одного изображения на другое происходит с помощью сдвига по вертикали. Вот и все чудеса! Смотрите на код:
<html> <head> <meta charset="utf-8"> <title>Способ №2 - bloggood.ru</title> <style> a.rollover { background: url(knopka-3.png); /* рисунок, который увидим сразу */ display: block; /* Рисунок как блочный элемент */ width: 280px; /* Ширина рисунка */ height: 70px; /* Высота рисунка */ } a.rollover:hover { background-position: 0 -70px; /* Смещение фона */ } </style> </head> <body> <p><a href="#" class="rollover"> </a></p> </body> </html>
[посмотреть пример] или [скачать исходник]
Способ №3 – использование одной картинки и CSS-эффект
Возьмите картинку из способа №1, например, «knopka-1.png». Здесь нам понадобится только одна картинка. При наведении на картинку мышкой сработает CSS-эффект. Смотрите на код:
<html> <head> <meta charset="utf-8"> <title>Способ №3 - bloggood.ru</title> <style> a.rollover { background: url(knopka-1.png); /* рисунок, который увидим сразу */ display: block; /* Рисунок как блочный элемент */ width: 300px; /* Ширина рисунка */ height: 100px; /* Высота рисунка */ } a.rollover:hover { -webkit-filter: grayscale(100%); /* css-эффект при наведении мыши */ } </style> </head> <body> <p><a href="#" class="rollover"> </a></p> </body> </html>
[посмотреть пример] или [скачать исходник]
Вот такие вот пироги на сегодня!
Понравился пост? Помоги другим узнать об этой статье, кликни на кнопку социальных сетей ↓↓↓
Последние новости категории:
Похожие статьи
Популярные статьи:
-
Как узнать id компьютера
Дата: 29 марта 2013
Прокомментировано:90
просмотров: 330379 -
Размеры форматов листов А0 – А7
Дата: 23 января 2013
Прокомментировано:3
просмотров: 274712 -
Смешные логические загадки с подвохом, отгадки прилагаются
Дата: 12 ноября 2014
Прокомментировано:5
просмотров: 222616 -
Готовые макеты блоков для веб-страниц на HTML и CSS
Дата: 25 июня 2014
Прокомментировано:23
просмотров: 187978 -
Установка windows 7 на ноутбук
Дата: 18 декабря 2012
Прокомментировано:169
просмотров: 186569
7 Ответов на комментарий - Три способа сделать так, чтобы картинка менялась при наведении курсора мыши
Добавить комментарий
Метки: css
Добрый день. Спасибо за блог, познавательно. Скажите, возможно ли с помощью CSS сделать, чтоб не конпка при наведении менялась, а надпись? Причём кнопок много и надписи разные. Или нужно функцию создавать?
Здравствуйте, Тимофей! Можно так сделать при помощи обычного СSS.
Почитайте вот эту статью и с помощью этих правил можно сделать то, что вы хотели.
Спасибо за оперативность, но немного не то. Нужно чтоб менялся не стиль оформления текста на кнопке, а сам ТЕКСТ. т.е. на кнопке написано “Да”, при hover надпись должна меняться на “Нет”. такое возможно?
При нажатии на кнопку будет меняться текст:
Чтобы изменился текст при наведении на нее мышкой, воспользуйтесь вот этим кодом:
Ух ты! Спасибо! Всё-таки функция, да ещё с явой! Спасибо большое! При первой возможности опробую
Статья хорошая. А вот как сделать при наведение на картинку что с права левая картина изменила цвет ну типо правые варианты цветов а левая товар которая меняется в цвете.
а вы гуглили этот вопрос? Пробовали разобраться самостоятельно?