Информация

  • FastVps - Хостинг для форума
  • RegPartner - Домены по правильным ценам

"4admins.ru" Рекомендует

Кнопка на CSS3 без использования изображений

Графическое оформление, Шаблоны (html), темы (css), логотипы, картинки, смайлики и другое.
  • Автор 
    Сообщение
Аватара пользователя
Сообщения: 646
Зарегистрирован: 10 фев 2011, 18:34
Откуда: Иркутск
Благодарил (а): 135
Поблагодарили: 146 раз в 116 сообщениях
Город: Иркутск
Пол: Мужской
Адрес форума: в разработке
бабло: 0
Баллы репутации: 24

Кнопка на CSS3 без использования изображений

Сообщение Добавлено: 06 дек 2011, 21:34

[center]Изображение[/center]
[center]Живой просмотр[/center]
Пример первой кнопки на изображении:
Код: Выделить всё
<a href="" class="button">Кнопка</a>

-простая кнопка без значка.

для того чтоб, добавить значок, нужно добавить к классу ему присужденный псевдоэлемент. Рассмотрим на примере второй кнопки "Добавить", класс кнопки будет выглядеть :
<a href="" class="button add">Добавить</a>


а свойство add (знака плюс) в CSS таблицы выглядит вот так:
Код: Выделить всё
.add:before
{
        content: "\271A";
}

и для каждой такой кнопки присвоен свой псевдокласс, подробно смотрить в полном коде css файла.

HTML код кнопок:
Код: Выделить всё
<a href="" class="button">Кнопка</a>
    <a href="" class="button add">Добавить</a>
    <a href="" class="button edit">Редактировать</a>
    <a href="" class="button delete">Удалить</a>
    <a href="" class="button save">Сохранить</a>
    <a href="" class="button email">Добавить</a>
    <a href="" class="button like">Мне Нравится</a>
    <a href="" class="button next">Следующий</a>
    <a href="" class="button star">в Закладки</a>
    <a href="" class="button spark">ТОП</a>
    <a href="" class="button play">Play</a>

CSS код кнопок:
Код: Выделить всё
/*Стиль кнопки*/
.button
{
        display: inline-block;
        white-space: nowrap;
        background-color: #ccc;
        background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#ccc));
        background-image: -webkit-linear-gradient(top, #eee, #ccc);
        background-image: -moz-linear-gradient(top, #eee, #ccc);
        background-image: -ms-linear-gradient(top, #eee, #ccc);
        background-image: -o-linear-gradient(top, #eee, #ccc);
        background-image: linear-gradient(top, #eee, #ccc);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#eeeeee', EndColorStr='#cccccc');
        border: 1px solid #777;
        padding: 0 1.5em;
        margin: 0.5em;
        font: bold 1em/2em Arial, Helvetica;
        text-decoration: none;
        color: #333;
        text-shadow: 0 1px 0 rgba(255,255,255,.8);
        -moz-border-radius: .2em;
        -webkit-border-radius: .2em;
        border-radius: .2em;
        -moz-box-shadow: 0 0 1px 1px rgba(255,255,255,.8) inset, 0 1px 0 rgba(0,0,0,.3);
        -webkit-box-shadow: 0 0 1px 1px rgba(255,255,255,.8) inset, 0 1px 0 rgba(0,0,0,.3);
        box-shadow: 0 0 1px 1px rgba(255,255,255,.8) inset, 0 1px 0 rgba(0,0,0,.3);
}

.button:hover
{
        background-color: #ddd;
        background-image: -webkit-gradient(linear, left top, left bottom, from(#fafafa), to(#ddd));
        background-image: -webkit-linear-gradient(top, #fafafa, #ddd);
        background-image: -moz-linear-gradient(top, #fafafa, #ddd);
        background-image: -ms-linear-gradient(top, #fafafa, #ddd);
        background-image: -o-linear-gradient(top, #fafafa, #ddd);
        background-image: linear-gradient(top, #fafafa, #ddd);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#fafafa', EndColorStr='#dddddd');
}

.button:active
{
        -moz-box-shadow: 0 0 4px 2px rgba(0,0,0,.3) inset;
        -webkit-box-shadow: 0 0 4px 2px rgba(0,0,0,.3) inset;
        box-shadow: 0 0 4px 2px rgba(0,0,0,.3) inset;
        position: relative;
        top: 1px;
}

.button:focus
{
        outline: 0;
        background: #fafafa;
}

.button:before
{
        background: #ccc;
        background: rgba(0,0,0,.1);
        float: left;
        width: 1em;
        text-align: center;
        font-size: 1.5em;
        margin: 0 1em 0 -1em;
        padding: 0 .2em;
        -moz-box-shadow: 1px 0 0 rgba(0,0,0,.5), 2px 0 0 rgba(255,255,255,.5);
        -webkit-box-shadow: 1px 0 0 rgba(0,0,0,.5), 2px 0 0 rgba(255,255,255,.5);
        box-shadow: 1px 0 0 rgba(0,0,0,.5), 2px 0 0 rgba(255,255,255,.5);
        -moz-border-radius: .15em 0 0 .15em;
        -webkit-border-radius: .15em 0 0 .15em;
        border-radius: .15em 0 0 .15em;
        pointer-events: none;
}

/* Шестнадцатеричные объекты для значков */

.add:before
{
        content: "\271A";
}

.edit:before
{
        content: "\270E";
}

.delete:before
{
        content: "\2718";
}

.save:before
{
        content: "\2714";
}

.email:before
{
        content: "\2709";
}

.like:before
{
        content: "\2764";
}

.next:before
{
        content: "\279C";
}

.star:before
{
        content: "\2605";
}

.spark:before
{
        content: "\2737";
}

.play:before
{
        content: "\25B6";
}

greey_buttoms_css3.zip
Исходники
(19.01 Кб) Скачиваний: 62

В чем плюсы таких кнопок?
  • Скорость загрузки веб-страницы увеличивается. Из-за неиспользования в этой конструкции изображений.
Минусы:
  • Значки используют свойство :before псевдоэлемент. Поэтому, вы не будите видеть значки в браузерах IE7 и ниже,но кнопки будут выглядеть приличном виде.
[center]Скриншот отображения этих кнопок, в различных браузерах:[/center]
[center]Изображение[/center]
[center]Скриншот использование последних версий для современных браузеров и Windows 7 и iOS:[/center]
[center]Изображение[/center]

Скрытый текст. Необходимо зарегистрироваться.
ОСАГО онлайн - 16 страховых компаний для расчета полиса ОСАГО онлайн.

За это сообщение пользователя ArtPro поблагодарили:
GoDFaTHeR

Аватара пользователя
Сообщения: 7065
Зарегистрирован: 11 авг 2009, 16:58
Благодарил (а): 660
Поблагодарили: 2357 раз в 1754 сообщениях
Город: Москва
Пол: Мужской
Адрес форума: http://help.4admins.ru
Баллы репутации: 170

Re: Кнопка на CSS3 без использования изображений

Сообщение Добавлено: 07 дек 2011, 02:03

ArtPro писал(а):Живой просмотр

на своем форуме живые примеры надо показывать;)
На этом сервисе можно cоздать форум бесплатно


Вернуться в Оформление Форума

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8