⚡️ HTML и CSS с примерами кода

Тег <button> (от англ. button — кнопка) создаёт на веб-странице кнопки и по своему действию напоминает результат, получаемый с помощью <input> (с атрибутом type="button | reset | submit").

В отличие от этого элемента, <button> предлагает расширенные возможности по созданию кнопок. Например, на подобной кнопке можно размещать любые элементы HTML, в том числе изображения. Используя стили можно определить вид кнопки путём изменения шрифта, цвета фона, размеров и других параметров.

Формы
  • button
  • datalist
  • fieldset
  • form
  • input
  • label
  • legend
  • meter
  • optgroup
  • option
  • output
  • progress
  • select
  • textarea

Синтаксис

<button>...</button>

Закрывающий тег обязателен.

Атрибуты

autofocus
Устанавливает, что кнопка получает фокус после загрузки страницы.
disabled
Блокирует доступ и изменение элемента.
form
Связывает между собой форму и кнопку.
formaction
Задаёт адрес, на который пересылаются данные формы при нажатии на кнопку.
formenctype
Способ кодирования данных формы.
formmethod
Указывает метод пересылки данных формы.
formnovalidate
Отменяет проверку формы на корректность.
formtarget
Открывает результат отправки формы в новом окне или фрейме.
name
Определяет уникальное имя кнопки.
type
Устанавливает тип кнопки: обычная; для отправки данных формы на сервер; для очистки формы.
value
Значение кнопки, которое будет отправлено на сервер или прочитано с помощью скриптов.

Также для этого тега доступны универсальные атрибуты.

autofocus

Атрибут autofocus устанавливает, что кнопка получает фокус после загрузки страницы. Такую кнопку можно нажать сразу без перевода на неё фокуса, например, с помощью клавиатуры.

Синтаксис

<button autofocus>...</button>

Значения

Нет.

Значение по умолчанию

По умолчанию это значение выключено.

disabled

Блокирует доступ к кнопке и её изменение. Она в таком случае отображается серым цветом и недоступна для активации пользователем. Кроме того, такая кнопка не может получить фокус путём нажатия на клавишу Tab, мышью или другим способом. Тем не менее, такое состояние кнопки можно изменять через скрипты. Значение блокированной кнопки не передаётся на сервер.

Синтаксис

<button disabled>...</button>

Значения

Нет.

Значение по умолчанию

По умолчанию это значение выключено.

form

Связывает кнопку с формой по её идентификатору. Такая связь необходима в случае, когда кнопка не располагается внутри элемента <form>, например, при создании её программно.

Синтаксис

<button form="<идентификатор>">...</button>

Значения

Идентификатор формы (значение атрибута id элемента <form>).

Значение по умолчанию

Нет.

formaction

Определяет адрес обработчика формы — это программа, которая получает данные формы и производит с ними желаемые действия. Атрибут formaction по своему действию аналогичен атрибуту action элемента <form>. Если одновременно указать action и formaction, то при нажатии на кнопку атрибут action игнорируется и данные пересылаются по адресу, указанному в formaction.

Синтаксис

<button formaction="<адрес>">...</button>

Значения

Нет.

formenctype

Устанавливает способ кодирования данных формы при их отправке на сервер. Обычно явно указывается в случае, когда используется поле для отправки файла (input type="file"). Этот атрибут по своему действию аналогичен атрибуту enctype элемента <form>.

Синтаксис

<button
  formenctype="application/x-www-form-urlencoded | multipart/form-data | text/plain"
>
  ...
</button>

Значения

application/x-www-form-urlencoded
Вместо пробелов ставится +, символы вроде русских букв кодируются их шестнадцатеричными значениями (например,
%D0%9F%D0%B5%D1%82%D1%8F
вместо Петя).
multipart/form-data
Данные не кодируются. Это значение применяется при отправке файлов.
text/plain
Пробелы заменяются знаком +, буквы и другие символы не кодируются.

Значение по умолчанию

  • application/x-www-form-urlencoded

formmethod

Атрибут сообщает браузеру, каким методом следует передавать данные формы на сервер.

Синтаксис

<button formmethod="get | post">...</button>

Значения

Различают два метода — GET и POST.

GET
Этот метод предназначен для передачи данных формы непосредственно в адресной строке в виде пар «имя=значение», которые добавляются к адресу страницы после вопросительного знака и разделяются между собой амперсандом (символ &). Полный адрес к примеру будет http://site.ru/doc/?name=Vasya&password=pup. Объём данных в методе ограничен 4 Кб.
POST
Посылает на сервер данные в запросе браузера, объём пересылаемых данных ограничен лишь настройками сервера.

formnovalidate

Отменяет встроенную проверку данных введённых пользователем в форме на корректность при нажатии на кнопку. Такая проверка делается браузером автоматически при отправке формы на сервер для полей <input type="email">, <input type="url">, а также при наличии атрибута pattern или required у элемента <input>.

Синтаксис

<button formnovalidate>...</button>

Значения

Нет.

Значение по умолчанию

По умолчанию этот атрибут выключен.

formtarget

Определяет имя фрейма, в которое будет загружаться результат, возвращаемый обработчиком формы, в виде HTML-документа.

Синтаксис

<button
  formtarget="<имя фрейма> | _blank | _self | _parent | _top"
>
  ...
</button>

Значения

В качестве значения используется имя фрейма, заданное атрибутом name элемента <iframe>. Если установлено несуществующее имя, то будет открыта новая вкладка. В качестве зарезервированных значений можно указывать следующие.

_blank
Загружает страницу в новую вкладку браузера.
_self
Загружает страницу в текущую вкладку.
_parent
Загружает страницу во фрейм-родитель; если фреймов нет, то это значение работает как _self.
_top
Отменяет все фреймы и загружает страницу в полном окне браузера; если фреймов нет, то это значение работает как _self.

name

Определяет уникальное имя кнопки. Как правило, это имя используется при отправке значения кнопки на сервер или для доступа к кнопке через скрипты.

Синтаксис

<button name="<имя>">...</button>

Значения

В качестве имени используется набор символов, включая числа и буквы. JavaScript чувствителен к регистру, поэтому при обращении к элементу по имени соблюдайте ту же форму написания, что и в атрибуте name.

Значение по умолчанию

Нет.

type

Определяет тип кнопки, который устанавливает её поведение в форме. По внешнему виду кнопки разного типа никак не различаются, но у каждой такой кнопки свои функции.

Синтаксис

<button type="button | reset | submit">...</button>

Значения

button
Обычная кнопка.
reset
Кнопка для очистки введённых данных формы и возвращения значений в первоначальное состояние.
submit
Кнопка для отправки данных формы на сервер.
menu
Открывает меню, созданное с помощью элемента <menu>.

Значение по умолчанию

  • submit

value

Определяет значение кнопки, которое будет отправлено на сервер. На сервер отправляется пара «имя=значение», где имя задаётся атрибутом name элемента <button>, а значение — атрибутом value. Значение может как совпадать с текстом на кнопке, так быть и самостоятельным. Также атрибут value применяется для доступа к данным через скрипты.

Синтаксис

<button value="<текст>">...</button>

Значения

Любая текстовая строка.

Значение по умолчанию

Нет.

Спецификации

  • WHATWG HTML Living Standard
  • HTML5
  • HTML 4.01 Specification

Описание и примеры

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>BUTTON</title>
  </head>
  <body>
    <p>
      <button>Кнопка с текстом</button>
      <button>
        <img
          src="image/umbrella.gif"
          alt="Зонтик"
         
        />
        Кнопка с рисунком
      </button>
    </p>
  </body>
</html>

Ссылки

  • Тег <button> MDN (рус. )

— элемент кнопки — HTML

HTML-элемент <button> создаёт кликабельную кнопку, которая может быть использована в формах или в любом другом месте документа, который требует простой, стандартной кнопки. По умолчанию, кнопки HTML обычно представлены в стиле, аналогичном стилю хост-платформы, на которой работает user agent, но вы можете изменить внешний вид кнопки, используя CSS.

Категории контентаОбщий поток (en-US), текстовый контент (en-US), интерактивный контент (en-US), listed (en-US), labelable (en-US), и submittable (en-US) form-associated (en-US) элемент, очевидный контент.
Допустимое содержимоеТекстовый контент (en-US).
Пропуск теговНет, открывающий и закрывающий теги обязательны.
Допустимые родителиЛюбой элемент с поддержкой текстового контента (en-US).
Допустимые ARIA-ролиcheckbox, link (en-US), menuitem (en-US), menuitemcheckbox (en-US), menuitemradio (en-US), radio (en-US), switch (en-US), tab (en-US)
DOM-интерфейсHTMLButtonElement

Элемент поддерживает глобальные атрибуты (en-US).

autofocus HTML5

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

autocomplete Non-standard

Использование данного атрибута на элементе <button> не описано в стандарте и используется только в Firefox браузере. По умолчанию, в отличие от прочих браузеров, Firefox сохраняет назначенное динамически отключённое состояние для элемента <button> при последующих загрузках страницы. Установка для данного атрибута значения off отключает подобное поведение. Смотрите баг 654072.

disabled

Булевый атрибут, указывающий, что пользователь не может взаимодействовать с кнопкой. Если атрибут не установлен, то кнопка наследует его от элемента-контейнера, в котором она расположена, например от <fieldset>; если отсутствует элемент-контейнер, с установленным атрибутом disabled, то кнопка доступна для взаимодействия. Firefox по умолчанию, в отличие от прочих браузеров, сохраняет назначенное динамически отключённое состояние для элемента <button>, даже при обновлении страницы. Чтобы изменить поведение браузера в этом случае, используйте атрибут autocomplete.

form HTML5

Атрибут form позволяет указать элемент <form>, с которым связана кнопка. Данный атрибут должен хранить значение id элемента <form>. Если данный атрибут не установлен, то элемент <button> будет связан с родительским элементом <form>, если последний существует.Атрибут работает независимо от расположения элементов в документе, поэтому он позволяет связать элемент <button> с формой, даже в случае, если <button> не является наследником элемента <form>.

formaction HTML5

Ссылка на обработчик формы. Если атрибут определён — он переопределит атрибут action у формы-родителя.

formenctype HTML5

Если button имеет тип submit, то этот атрибут определяет тип контента, отправляемого на сервер. Возможные значения данного атрибута:

  • application/x-www-form-urlencoded: значение по умолчанию, если атрибут не указан.
  • multipart/form-data: следует использовать это значение, если форма содержит элемент <input> со значением атрибута type file.
  • text/plain Если этот атрибут определён, он переопределяет атрибут enctype у формы-родителя.
formmethod HTML5

Если button имеет тип submit, то этот атрибут определяет метод HTTP-запроса для отправки данных на сервер. Возможные варианты:

  • post: данные формы включаются в тело сообщения и отправляются на сервер.
  • get: данные формы отправляются на сервер в виде ссылки, состоящей из URI атрибута action и непосредственно данных, отделённых знаком ‘?’. Данные формы будут иметь вид ключ/значение и разделены амперсандом, например name=Name&id=35. Следует использовать этот метод только если нет побочных эффектов и данные формы содержат лишь ASCII-символы.Если этот атрибут определён, он переопределяет атрибут method у формы-родителя.
formnovalidate HTML5

Булевый атрибут. Указывает, что данные формы не будут валидироваться при отправке.Если этот атрибут определён, он переопределяет атрибут novalidate у формы-родителя.

formtarget HTML5

Если button имеет тип submit, этот атрибут является именем или ключевым словом,указывающим, где отображать ответ, полученный после отправки формы. This is a name of, or keyword for, a browsing context (for example, tab, window, or inline frame). If this attribute is specified, it overrides the target attribute of the button’s form owner. The following keywords have special meanings:

  • _self: Load the response into the same browsing context as the current one. This value is the default if the attribute is not specified.
  • _blank: Load the response into a new unnamed browsing context.
  • _parent: Load the response into the parent browsing context of the current one. If there is no parent, this option behaves the same way as _self.
  • _top: Load the response into the top-level browsing context (that is, the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as _self.
name

Название кнопки, которая отправляется вместе с данными формы.

type

Устанавливает тип кнопки. Достпуные значения:

  • submit: Кнопка отправляет данные формы на сервер. Это значение по умолчанию, если атрибут не указан или если атрибут динамически изменен на пустое или недопустимое значение.
  • reset: Кнопка сбрасывает все элементы управления к их начальным значениям. Удаляет данные, введенные в форму.
  • button: Кнопка не имеет поведения по умолчанию. При этом на странице могут быть скрипты, активируемые при возникновении определённых событий на кнопке.
  • menu: Кнопка открывает всплывающее меню, определяемое с помощью соответствующего <menu> элемента.
value

Начальное значение кнопки.

<button name="button">Тык!</button>

Clicking and focus

Whether clicking on a <button> causes it to (by default) become focused varies by browser and OS. The results for <input> of type="button" and type="submit" are the same.

Desktop BrowsersWindows 8.1OS X 10.X
FirefoxYes — Firefox 30.0No (even with a tabindex) Firefox 63
ChromeYes — Chrome 35Yes — Chrome 65
SafariN/ANo (even with a tabindex) Safari 12 (bug 22261)
Internet ExplorerYes — Internet Explorer 11N/A
PrestoYes — Opera 12Yes — Opera 12
Mobile BrowsersiOS 7.1.2Android 4.4.4
Safari MobileNo (even with a tabindex)N/A
Chrome 35No (even with a tabindex)Yes
Specification
HTML Standard
# the-button-element

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Found a content problem with this page?

  • Edit the page on GitHub.
  • Report the content issue.
  • View the source on GitHub.

Want to get more involved?

Learn how to contribute.

This page was last modified on by MDN contributors.

25+ КНОПОК CSS — Сообщество разработчиков

50+ КНОПОК CSS
https://gscode.in/css-buttons/

ПОДРОБНЕЕ AIRTICLE
1: 20+ Шаблоны фона CSS Пример
2: 30+ 90 Удивительное меню CSS0 3 : 15+ Bootstrap navbar
4: 30+ Radio Button CSS style Examples
5: 50+ CSS шаблон сетки

CSS Button On Hover Slide Effect.

Креативные эффекты анимации кнопок | Только с использованием HTML и CSS

Креативная кнопка | hover over

Внесены изменения в мою первую ручку с эффектом наведения на кнопку. Добавлены анимации CSS для псевдоэлементов. Кнопка представляет собой миксин SASS.

4.

Если вам понравилась эта статья, ознакомьтесь с дополнительными примерами [gscode.in]

50+ КНОПОК CSS
https://gscode.in/css-buttons/

Эффект наведения с использованием псевдоэлементов

Нужен простой эффект наведения кнопки для вашего проекта? Вот мой список примеров.

Крутая коллекция простых эффектов наведения на кнопку с использованием только CSS. Профессионально и чисто. Не забудьте оставить несколько комментариев, вопросов или опасений. Хотите увидеть больше? или есть идеи? Дайте мне знать!

Удивительные эффекты при наведении на кнопку

Кнопка с тонким глянцевым/блестящим эффектом при наведении. Никаких изображений, только один элемент HTML и псевдоэлемент CSS. Вдохновленный http://codepen.io/indyplanets/pen/LejJd

Это десять кнопок с эффектами наведения CSS. В качестве эффектов используются переходы, текстовые тени, анимация и преобразования.

Кнопка с простым эффектом при наведении! Требуется один элемент

Игра с CSS-анимацией и эффектом наведения.

Коллекция CSS3-эффектов наведения для применения к ссылкам, кнопкам, логотипам, SVG, избранным изображениям и т. д. Легко применяйте к своим элементам, изменяйте или просто используйте для вдохновения. Доступно в CSS, SASS и LESS.

Теперь доступна версия 2.0 с более чем 100 эффектами .

Скачайте последнюю версию hover.css с GitHub. Эта версия CodePen останется на уровне v1.0 9.0003

Простые стили кнопок помогут вам начать веб-дизайн!

Создание базовых анимаций с тенями. Никаких дополнительных элементов или даже псевдоэлементов не требуется.

Посмотрите мою коллекцию пуговиц, чтобы узнать больше.

Некоторые эффекты наведения на кнопку с использованием псевдоэлементов и границ.

Несколько примеров ярких эффектов наведения. В настоящее время обновление этой ручки. Work in Progress

Если вам понравилась эта статья, посмотрите еще Пример [gscode. in]

p> Простая идея, которую оказалось очень трудно реализовать. В этом эксперименте не используются никакие 3D-элементы или преобразования, только 2D-элементы и немного умной математики, чтобы создать иллюзию 3D-монеты реальной толщины. Я доволен результатами, учитывая ограничения HTML и CSS.

Подбрасывание монеты также происходит случайным образом — если вы нажмете кнопку несколько раз, вы увидите.

Конфетти с использованием JS, SCSS и холста HTML5.

Пуговица на футболке с зеленым носком.

Не знаю почему, но в Chrome иногда срезается наконечник пушки, что не идеально.

Наслаждайтесь!

50+ КНОПОК CSS
https://gscode.in/css-buttons/

ПОДРОБНЕЕ AIRTICLE
1: 20+ фоновых шаблонов CSS Пример
2: 30+ удивительных примеров CSS-гамбургер-меню
3: 15+ навигационной панели Bootstrap
4: 30+ примеров стилей CSS для радиокнопок
5: 50+ шаблонов сетки CSS

Стилизация элемента кнопки с помощью CSS

Независимо от того, какую CMS вы используете (WordPress, Drupal, Joomla, Magento и т. д.), будет полезно изучить CSS, чтобы убедиться, что вы можете использовать свой брендинг на своем сайте. Кнопки на веб-сайтах немного сложнее стилизовать, но они действительно придают сайту завершенный и изысканный вид, когда вы настраиваете их в соответствии со своим внешним видом.

Тег

Обратите внимание, что указание атрибута type является обязательным.


Атрибуты HTML

Тег

<дел>