Как создать слайдер на CSS3 и jQuery

В этой статье мы создадим слайдер с помощью бибилиотеки Nivo Slider jQuery Script и CSS3. Nivo Slider jQuery Script - мощный инструмент, который доступен для каждого разработчика. Этот скрипт имеет 16 различных переходов. Вы можете использовать его где угодно и для любого вида проекта, включая личные и коммерческие веб-сайты и темы, которые Вы создаете.

Сложность

nevo slider

Шаг 1 – HTML разметка

Для начала скачаем Nivo Slider jQuery с официального сайта. Из этого пакета нам понадобятся только два файла: nivo-slider.css и jquery.nivo.slider.pack.js.

Затем создадим основной HTML документ и добавим CSS и JS файлы "Nivo Slider" которые мы загрузили. Также необходимо добавить jQuery библиотеку, используя последнюю версию в Google CDN.

<html  lang="en">
<head>
<meta charset="utf-8">
<title>Slider Tutorial</title>
<link rel="stylesheet" href="/css/nivo-slider.css" media="screen">
</head> <body> <!-- jQuery & Nivo Slider -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script src="/js/jquery.nivo.slider.pack.js"></script> </body>
</html>

Для инициализации nivo slider, добавим небольшой скрипт прямо в секцию head. Также настроим кнопки управления, сменим непрозрачность заголовка и положение боковых кнопок влево и вправо (полный список настроек вы можете найти на официальном сайте).

<script>
$(window).load(function() {
$('#slider').nivoSlider({
directionNavHide: false,
captionOpacity: 1,
prevText: '<',
nextText: '>'
});
});
</script>

Шаг 2 – Разметка слайдера

Теперь создадим div с классами slider-wrapper и futurico-theme. И еще один контейнер div с идентификатором slider и классом nivoSlider. Для каждого слайда мы зададим соответствующее изображение.

<div class="slider-wrapper futurico-theme">
 
<div id="slider" class="nivoSlider">
<img src="/img/slide1.png" alt="">
<img src="/img/slide2.png" alt="">
<img src="/img/slide3.png" alt="">
<img src="/img/slide4.png" alt="">
</div>
</div>

Шаг 3 – Расположение слайдера

Далее зададим CSS слайдеру высоту в 180px и ширину 300px. Поскольку мы добавим рамку в 5px, нам нужно вычесть 10px из ширины и из высоты. Также выберем второстепенный цвет и сделаем закругленные углы.

.futurico-theme.slider-wrapper {
    position: relative;
    width: 290px;
    height: 170px;
    margin: 0;
    padding: 5px;

    background: #141517;

    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.futurico-theme .nivoSlider {
    position: relative;
    width: 290px;
    height: 170px;
}

.futurico-theme .nivoSlider img {
    display: none;
    position: absolute;
    width: 290px;
    height: 170px;
    top: 0;
    left: 0;
}

css slider

Шаг 4 – Кнопки управления

Перейдем к кнопкам управления CSS слайдером. Разместим их на основании слайдера и установим выравнивание по центру. Если у Вас будет больше четырех слайдов, то лучше установить выравнивание слева.

.futurico-theme .nivo-controlNav {
    position: absolute;
    bottom: -30px;
    left: 105px;
}

Каждую кнопку оформим в виде круга, а так же добавим второстепенный цвет, тени и закругленные углы. Чтобы скрыть нумерацию, установим отступ с отрицательной величиной.

.futurico-theme .nivo-controlNav a {
    display: block;
    float: left;
    width: 16px;
    height: 16px;
    margin-right: 5px;
    text-indent: -9999px;

    background: #141517;

    -webkit-border-radius: 16px;
    -moz-border-radius: 16px;
    border-radius: 16px;

    -webkit-box-shadow: inset 0px 1px 1px rgba(0,0,0, .5), 0px 1px 1px rgba(255,255,255, .05);
    -moz-box-shadow: inset 0px 1px 1px rgba(0,0,0, .5), 0px 1px 1px rgba(255,255,255, .05);
    box-shadow: inset 0px 1px 1px rgba(0,0,0, .5), 0px 1px 1px rgba(255,255,255, .05);
}

Для индикации активного слайда - добавим зеленый градиент и изменим тени.

.futurico-theme .nivo-controlNav a.active,
.futurico-theme .nivo-caption span {
    background: #a5cd4e;
    background: -moz-linear-gradient(top,  #a5cd4e 0%, #6b8f1a 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#a5cd4e), color-stop(100%,#6b8f1a));
    background: -webkit-linear-gradient(top,  #a5cd4e 0%,#6b8f1a 100%);
    background: -o-linear-gradient(top,  #a5cd4e 0%,#6b8f1a 100%);
    background: -ms-linear-gradient(top,  #a5cd4e 0%,#6b8f1a 100%);
    background: linear-gradient(top,  #a5cd4e 0%,#6b8f1a 100%);

    -webkit-box-shadow: inset 0px 1px 1px rgba(255,255,255, .4), 0px 1px 1px rgba(0,0,0, .3);
    -moz-box-shadow: inset 0px 1px 1px rgba(255,255,255, .4), 0px 1px 1px rgba(0,0,0, .3);
    box-shadow: inset 0px 1px 1px rgba(255,255,255, .4), 0px 1px 1px rgba(0,0,0, .3);
}

jquery slider

Шаг 5 – Боковые кнопки

Боковые кнопки управления слайдами поместим в центр и добавим некоторые стили (шрифт, размер шрифта, цвет, и т.д.).

.futurico-theme .nivo-directionNav a {
    display: block;
    top: 60px;

    font-family: 'Consolas', sans-serif;
    font-size: 40px;
    color: #141517;
    text-shadow: 0px 1px 1px rgba(255,255,255, .05);
}

.futurico-theme a.nivo-prevNav { left: -40px; }

.futurico-theme a.nivo-nextNav { right: -40px; }

css слайдер

Шаг 6 – Разметка заголовка слайдов

Чтобы создать заголовки слайдов, создадим контейнер с классом nivo-html-caption и присвоим идентификатор. Чтобы связать заголовок с соответствующим слайдом, поменяем title на <img> с тем же самым именем идентификатора заголовка.

<div id="slider" class="nivoSlider">
<img src="/img/slide1.png" alt="" title="#caption1">
<img src="/img/slide2.png" alt="">
<img src="/img/slide3.png" alt="" title="#caption3">
<img src="/img/slide4.png" alt="">
</div>
<div id="caption1" class="nivo-html-caption">
<strong>New Project</strong> <span></span> <em>Some description here</em>.
</div>
<div id="caption3" class="nivo-html-caption">
<strong>Image 3</strong> <span></span> <em>Some description here</em>.
</div>

jquery слайдер

Шаг 7 – Стиль заголовков

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

.futurico-theme .nivo-caption {
    padding: 5px 0;

    font-family: Helvetica, Arial, sans-serif;
    font-size: 12px;
    color: #e1e1e1;

    background: #000000;

    -webkit-border-radius: 0 0 3px 3px;
    -moz-border-radius: 0 0 3px 3px;
    border-radius: 0 0 3px 3px;
}

.futurico-theme .nivo-caption span {
    display: inline-block;
    width: 5px;
    height: 5px;
    margin: 0 5px 1px 5px;

    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.futurico-theme .nivo-caption em {
    font-family: Georgia, sans-serif;
    font-size: 11px;
    color: #727581;
}

Вот и все! Мы создали стильный и красивый CSS слайдер. В этой обучающей программе мы сосредоточились на моделировании слайдера, а "Nivo Slider Script " позаботился о функциональности.

Перевод статьи How to Create an Image Slider using jQuery and CSS3

Тэги: slider

Вход

Уважаемый пользователь! Мы обнаружили, что вы используете AdBlock и вынуждены скрыть часть материалов на нашем сайте. Siteacademy существует и развивается за счет доходов от рекламы. Просим внести наш сайт в список исключений или отключить Блокировщик рекламы на нашем сайте.