Создание кнопки

Рассмотрим примеры создания CSS-кнопок без использования картинок.

Для создания красивых кнопок с градиентом и закругленными углами веб-мастерам приходилось использовать картинки с прозрачными областями или сценарии JavaScript (jQuery).

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

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

CSS3 позволяет писать элегантный и простой код, который полностью удовлетворяет требованиям дизайнеров. Кроме того, используемые приемы обладают урезанной совместимостью со старыми браузерами — в любом случае будет отображаться кнопка (только без дополнительных рюшечек).

Начнем с основ. Для создания кнопки используется тег button


<button>Щелкни меня</button>

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


<button class="blue-btn">Щелкни меня</button>

button.blue-btn{
	background: #2e8ce3;
	padding: 7px 30px;
  	font-size:13px;
	font-weight: bold;
	color:#fff;
	text-align: center;
	border:solid 1px #73c8f0;
}

Теперь намного лучше — голубая кнопка с белым текстом смотрится интереснее.

Переходим к более продвинутым приемам. Закруглим уголки у кнопки. Здесь наблюдается очень радостная картина, все современные браузеры, включая IE9, уже поддерживают правило border-radius. На всякий случай еще можно использовать старые стили -moz-border-radius и -webkit-border-radius, как временную меру.


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

Градиент

Добавим немного градиента. К сожалению, пока придется использовать специфичные теги для отдельных браузеров (Chrome, Firefox, Safari). Для градиента нужно указывать начальные и конечные точки для перехода цветов.


background: -moz-linear-gradient(0% 100% 90deg,#2e8ce3, #73c2fd);
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#73c2fd), to(#2e8ce3));

Внутрення тень

Добавим небольшую белый ободок, чтобы кнопка была более выпуклой.


box-shadow: inset 0 1px 0 0 #fff;
-moz-box-shadow: inset 0 1px 0 0 #fff;
-webkit-box-shadow: inset 0 1px 0 0 #fff;

Новое свойство box-shadow создает эффект тени. В нашем примере мы используем параметр inset, что позволяет добавить белую окантовку шириной в 1 пиксель в верхней части кнопки, но не выходя за пределы границы кнопки.

Для увеличения контрастности добавим темный цвет в нижней части кнопки.


border-bottom-color:#196ebb;

Тень для текста

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


text-shadow: 0 -1px 0 #196ebb;

Заключение

Экспериментируйте со цветами и попробуйте получить другие красивые кнопки в стиле CSS3. Все примеры отлично работают в Google Chrome. В IE9 многие новшества пока не работают. Другие браузеры занимают промежуточное положение между двумя этими браузерами.

Реклама