CSS3 для начинающих. Часть 6.1. Кнопки на CSS3

CSS3 для начинающихОчередная статья из цикла CSS3 для начинающих. Речь сегодня пойдет о кнопках. Мы привыкли, что кнопка — это набор картинок. Первая картинка создается для кнопки в спокойном состоянии, вторая для состояния когда курсор мыши наведен на кнопку и третья — при нажатии на кнопку. Таким образом для каждой кнопки приходиться рисовать 3 картинки. С развитием и внедрением CSS3 мы можем избавиться от всего этого и делать кнопки легко и непринужденно, используя только стили CSS. Сегодня мы займемся созданием простых кнопок разного размера и цвета.

Цель

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

Стили кнопки

Это стандартный стиль для всех кнопок нашего сайта. Мы можем кастомизировать кнопки путем добавления цепочек CSS классов, таким образом меняя цвет и размер кнопок. Так же мы будем использовать изображением под названием overlay.png, которое нужно нам для нормального отображения градиентной заливки для браузера IE6.

Мы так же будем использовать RGBA модель задания цвета. Это та же самая модель RGB только с добавлением прозрачного стиля, который позволяет задать прозрачность цвета. Это даст нам возможность создать ощущение выпуклости кнопки за счет теней.

.button, .button:visited {
	background: #222 url(overlay.png) repeat-x;
	display: inline-block;
	padding: 5px 10px 6px;
	color: #fff;
	text-decoration: none;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-box-shadow: 0 1px 3px rgba(0,0,0,0.6);
	-webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.6);
	text-shadow: 0 -1px 1px rgba(0,0,0,0.25);
	border-bottom: 1px solid rgba(0,0,0,0.25);
	position: relative;
	cursor: pointer
}

Размер кнопки

Теперь мы можем создать дополнительные классы, чтобы задать размеры кнопкам. Создадим несколько разных размеров: .small .medium .large и .super. Как вы увидите из кода мы меняем всего два параметра — размер шрифта и отступ от края (padding).

.small.button, .small.button:visited
{ font-size: 11px}
.button, .button:visited, .medium.button, .medium.button:visited
{
   font-size: 13px;
   font-weight: bold;
   line-height: 1;
   text-shadow: 0 -1px 1px rgba(0,0,0,0.25);
}

.large.button, .large.button:visited
{
   font-size: 14px;
   padding: 8px 14px 9px;
}

.super.button, .super.button:visited
{
   font-size: 34px;
   padding: 8px 14px 9px;
}

Цвет кнопки

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

.pink.button, .magenta.button:visited	{ background-color: #e22092; }
.pink.button:hover				{ background-color: #c81e82; }
.green.button, .green.button:visited	{ background-color: #91bd09; }
.green.button:hover				{ background-color: #749a02; }
.red.button, .red.button:visited		{ background-color: #e62727; }
.red.button:hover					{ background-color: #cf2525; }
.orange.button, .orange.button:visited	{ background-color: #ff5c00; }
.orange.button:hover				{ background-color: #d45500; }
.blue.button, .blue.button:visited   	        { background-color: #2981e4; }
.blue.button:hover				{ background-color: #2575cf; }
.yellow.button, .yellow.button:visited	{ background-color: #ffb515; }
.yellow.button:hover				{ background-color: #fc9200; }

Посмотреть демо

В следующей статье из цикла статей CSS3 для начинающих мы займемся созданием трехмерных кнопок.



Запись опубликована в рубрике CSS3 с метками , , , , . Добавьте в закладки постоянную ссылку.

3 комментария: CSS3 для начинающих. Часть 6.1. Кнопки на CSS3

  1. Уведомление: CSS3 для начинающих. Часть 6.1. Кнопки на CSS3 | Grabr

  2. Уведомление: CSS3 для начинающих | RusDigi.org Блог Гилязетдинова Руслана

  3. igor goldberg говорит:

    Изящное решение!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *