Всем привет!!!!!
Я знаю, давненько я ничего не заливал, но были на то свои причины.
Я получил аттестат об окончании средней школы! Меня можно поздравить.
Ну не буду разводить дискуссию и начну.
Урок будет посвящён сравнению кнопок на xhtml + css. Да, вы не ошиблись с xhtml + css + javascript (jQuery эффектом).
Результат можно посмотреть тут
Шаг 1 - HTML
Каждый желает иметь особенные кнопки, ведь так? Кнопки для различных целей.
В этой части кода будет реализован простой сценарий HTML ссылки, при котором кнопка будет вести на скачивание файла.
Это будет выглядеть примерно так:
<a href="path/to/download.zip" class="button"></a>
Шаг 2 - CSS
Добавьте следующий CSS код в ваш HTML файл:
.button {
width:570px;
height:64px; /* Обратите внимание, что высота
не является высотой всего спрайта,
но лишь высотой одной кнопки */
display:block;
/*Путь к спрайту*/
background-image:url(images/downloadbutton.png);
background-position: top; /* в фоновой позиции
(в сочетании с высотой!) дает возможность,
что только в верхней части будет видно спрайт */
}
Когда вы примените код CSS выше, вы увидите только серую кнопку, потому что она расположена выше зелёной кнопки, а высота её 64px.
Теперь реализуем RollOver при наведении курсора мыши.
.button:hover
{
width:570px;
background-position: bottombottom;
height:64px;
background-image:
url(images/downloadbutton.png) no repeat;
}
Когда вы примените данный код CSS, вы увидите только зеленую кнопку (при наведении курсора мышки) "Download", потому что она расположена в нижней части изображения спрайта, а её высота только 64px
Шаг 3 - Эффект наведения
Переход будет сглаживаться с помощью JavaScript. Мы собираемся использовать популярную библиотеки Jquery. Скачать её можно с официального сайта www.jquery.com, http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js
Шаг 4 - Подключение библиотеки.
В заголовке страницы вставьте ссылку на библиотеку:
<script type="text/javascript"
src="path/to/jquery-1.3.2.min.js"></script>
После этого мы можем добавить следующий код между главными тегами.
<script type="text/javascript">
$(document).ready(function()
{
// Добавим класс "button"
//как и в CSS с точкой перед ним
$('.button').append(
'<span class="hover"></span>')
.each(function ()
{
var $span = $('> span.hover', this)
.css('opacity', 0);
$(this).hover(function ()
{
//Изменение числа 500
//приведёт к изменению скорости эффекта
$span.stop().fadeTo(500, 1);
}, function ()
{
//Изменение числа 500 приведёт
//к изменению скорости эффекта
$span.stop().fadeTo(500, 0);
});
});
});
</script>
У вас наверняка возник такой вопрос: "Как работать с несколькими кнопками на одной странице?"
Ответ: Если у вас есть несколько кнопок на одной странице, и вы хотите добавить эффект затухания, вы можете дать ему другой класс в HTML и добавить в JavaScript-код, который указан выше.
И вы также должны их разделить запятой. (Пример: '.button, .buttonTwo')
Шаг 5 - Редактирование CSS
.button
{
position:relative;
display:block;
height: 64px;
width: 570px;
background:url(images/downloadbutton.png) no-repeat;
background-position: top;
}
.button span.hover
{
position: absolute;
display: block;
height: 64px;
width: 570px;
background: url(images/downloadbutton.png) no-repeat;
background-position: bottombottom;
}
Вот и все, посмотреть демо можно прямо тут Кнопки на Jquery