<button>

A tag <button> é um elemento HTML representado visualmente por um botão clicável. É um elemento muito útil em formulários ou em qualquer parte de uma página web.

Como utilizar a tag <button>?

A tag <button> é utilizada para inserir interatividade em uma página ou formulário e tem como função executar uma determinada ação ao receber um clique do usuário.

Por padrão, sua aparência é semelhante a um botão retangular. Entretanto, ela pode ser alterada por meio de estilos CSS ou também substituída por imagem e textos.

<button>: na prática


  <form>
    <input type='text' placeholder='Digite o seu nome'/>
    <button type='submit'>Enviar</button>
  </form>
  
Código 1. Exemplo de button

Sintaxe

<button> Nome apresentado no botão…</button>

Atributos

autofocus

Esse atributo especifica que um botão deve obter foco automático quando a página for carregada.

disable

Esse atributo especifica que um botão será desabilitado, ou seja, o usuário não poderá interagir com o botão.

form

Esse atributo especifica a qual formulário o botão pertence.

formaction

Esse atributo especifica para onde enviar os dados do formulário quando este é submetido pelo botão.

formenctype

Esse atributo especifica como os dados de um formulário devem ser codificados antes de enviá-los para um servidor. Seus possíveis valores são:

  • application/x-www-form-urlencoded: Valor padrão se o atributo não for especificado;
  • multipart/form-data: Este valor é necessário se o usuário fizer upload de um arquivo através do formulário;
  • text/plain: Envia os dados sem qualquer codificação (Não recomendado).

formmethod

Esse atributo especifica o método HTTP que o navegador usará para enviar o formulário. Seus possíveis valores são:

  • post: Envia os dados obtidos do formulário para o servidor;
  • get: Anexa os dados do formulário a URL.

formvalidate

Esse atributo especifica que os dados do formulário não é para ser validado quando submetido.

formtarget

Esse atributo é um nome ou palavra-chave indicando onde exibir a resposta que é recebida após o envio do formulário. Seus possíveis valores são:

  • _self: Carrega a resposta no mesmo contexto de navegação como atual;
  • _blank: Carrega a resposta em um contexto de navegação sem nome;
  • _parent: Carrega a resposta no contexto de navegação pai do atual;
  • _top: Carrega a resposta para todo o contexto de navegação no nível superior.

name

Esse atributo especifica um nome para o botão.

type

Esse atributo especifica um tipo para o botão.

  • submit: O botão envia os dados do formulário para o servidor;
  • reset: O botão volta os dados do formulário para seus valores iniciais;
  • button: O botão não possui comportamento padrão.

value

Esse atributo especifica um valor inicial para o botão.

Exemplos de uso da tag <button>

Exemplo 1

No Código 2 demonstraremos uma forma simples de aplicar o botão no código HTML.


  <div>
    <p>Clique no botão abaixo:</p>
    <button>Clique aqui</button>
  </div>
  
Código 2. Forma simples do botão

Note que neste exemplo o botão foi criado sem utilizar nenhum atributo. Neste código o botão não realizará nenhuma ação ao ser clicado.

Exemplo 2

Neste exemplo o Código 3 demonstraremos como aplicar um botão em um formulário.


  <form>
    <input type='text' placeholder='Digite o seu nome'/>
    <button type='button'>Enviar</button>
  </form>
  
Código 3. Aplicação do botão no formulário

Note que neste exemplo o botão foi criado com o atributo type que recebeu o valor ‘button’. Com isso, ao clicar no botão, ele não irá submeter o que for escrito no <input>.

Exemplo 3

Nos Códigos 4 e 5 demonstraremos um botão que submeterá um formulário.


  <form id="formulario">
    <button type="submit">Botão com type submit</button>
  </form>
  
Código 4. Botão no formulário

  document.querySelector('#formulario').addEventListener('submit', function (e) {
        e.preventDefault();
        document.body.append('Formulário submetido')
  })
  
Código 5. Botão no formulário

Note que neste exemplo foi preciso escrever código JavaScript para apresentar o resultado do clique no botão.

Exemplo 4

Nos Código 6 a 8 demonstraremos um botão aplicado com estilo CSS e que possui a capacidade de alterar esse estilo ao ser clicado.


  <div>
    <h1>Clique no botão abaixo e altere o seu estilo:</h1>
    <button id="novaCor" onClick="cliqueBtn()">Clique aqui</button>
  </div>
  
Código 6. Botão aplicado com estilo CSS

  button {
    font-size: 18px;
    font-weight: 600;
    background-color: aqua;
    border-radius: 12px;
    border: 0;
    padding: 10px 20px;
    cursor: pointer;
  }
  
Código 7. Botão aplicado com estilo CSS

  function cliqueBtn() {
    document.getElementById("novaCor").style.background = "red";
    document.getElementById("novaCor").style.color = "white"
  }
  
Código 8. Botão aplicado com estilo CSS

Note que neste exemplo utilizamos um id e a propriedade onClick no botão. O id será utilizado dentro de uma função JavaScript e o onClick será utilizado para acionar a função JavaScript quando o botão for clicado.

Com o JavaScript conseguimos criar uma função que dá a capacidade de alterar o estilo do botão quando este for clicado e com o código CSS, conseguimos alterar de diversas formas o visual de um botão.

Compatibilidade com navegadores

O <button> é suportado em todos os navegadores apresentados na tabela abaixo:

<button> Chrome Mozilla Firefox Edge / IE Opera Safari
Sim Sim Sim Sim Sim