-
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
📰 post - Adding the "Trabalhando com Formulários em HTML" certificate
- Loading branch information
Showing
5 changed files
with
60 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
--- | ||
layout: certificate | ||
type: course | ||
code: "Jt75rKEsWEmmomj5Adg8Hw" | ||
authority: dio | ||
certificate: | ||
name: "Trabalhando com Formulários em HTML" | ||
workload: "0000-00-00T02:00:00" | ||
competencies: [ | ||
html5, | ||
visual-studio-code, | ||
live-server | ||
] | ||
date: "2024-11-15T21:56:00" | ||
--- | ||
|
||
Este curso, **Trabalhando com Formulários em HTML**, explorou os componentes essenciais para coleta de dados e interação em aplicações web. Através de uma abordagem prática e detalhada, revisitei conceitos fundamentais como a estrutura básica de formulários, os diversos tipos de campos de entrada e os atributos avançados que otimizam a experiência do usuário. Além disso, o curso destacou a importância dos formulários como uma ponte essencial entre o *front-end* e o gerenciamento de dados no *back-end*, enfatizando as boas práticas para uma integração eficiente e acessível. | ||
|
||
## Estrutura de Formulários com a Tag `<form>` | ||
|
||
A *tag* `<form>` é a base de qualquer formulário em *HTML*, sendo indispensável para estruturar os elementos que compõem a interface e gerenciar a comunicação com o servidor. Por meio dessa *tag*, é possível organizar diversos campos de entrada e configurar como e para onde os dados serão enviados. O atributo **`name`** desempenha um papel importante ao permitir a identificação do formulário em *scripts* ou no servidor, o que é especialmente útil em páginas com múltiplos formulários. O atributo **`action`**, por sua vez, define o endereço do servidor que receberá os dados submetidos. A maneira como os dados são enviados é determinada pelo atributo **`method`**: enquanto o método *`GET`* envia informações diretamente pela *URL*, sendo ideal para consultas rápidas e buscas, o método *`POST`* transmite os dados de forma mais segura, enviando-os no corpo da requisição. Além disso, o atributo **`target`** possibilita controlar como os resultados serão exibidos, seja abrindo uma nova aba, na janela atual ou até mesmo em *iframes*. O atributo **`autocomplete`** é outro destaque, pois melhora significativamente a usabilidade ao permitir que o navegador sugira preenchimentos automáticos com base em dados anteriormente armazenados, economizando tempo do usuário e reduzindo erros. | ||
|
||
## Campos de Entrada com a Tag `<input>` | ||
|
||
A *tag* `<input>` é incrivelmente versátil, sendo responsável por capturar uma ampla variedade de dados dos usuários. Essa flexibilidade é possibilitada pelos diferentes tipos de entrada disponíveis, combinados com atributos específicos que personalizam e tornam a experiência mais funcional. O tipo **`text`** é usado para entradas simples de texto, permitindo que o usuário insira nomes, descrições ou outras informações de formato livre. Já o tipo **`number`** é projetado para valores numéricos, oferecendo suporte a atributos como **`min`**, **`max`** e **`step`**, que ajudam a definir limites e incrementos para o valor inserido. Outros campos úteis incluem o tipo **`email`**, que realiza validações automáticas para verificar o formato correto de um endereço de e-mail, e **`url`**, que garante a formatação adequada de *links*. Para situações que exigem o envio de arquivos, o tipo **`file`** é essencial, permitindo a seleção de um ou vários arquivos por meio do atributo **`multiple`**. Adicionalmente, campos como **`hidden`** são usados para armazenar informações que não são exibidas ao usuário, mas que podem ser úteis para o sistema, como identificadores de sessão. A inclusão de tipos mais modernos, como **`color`**, que permite a seleção de cores, e **`range`**, que cria uma barra deslizante, traz interatividade adicional aos formulários. Por fim, os campos relacionados a datas, como **`date`**, **`month`** e **`week`**, proporcionam uma maneira prática de entrada, embora algumas implementações ainda apresentem limitações de compatibilidade entre navegadores. | ||
|
||
## Checkbox e Radio Buttons | ||
|
||
Os **checkboxes** e **radio buttons** são fundamentais em formulários que envolvem seleções. O *checkbox* permite que os usuários escolham várias opções de um mesmo conjunto, sendo ideal para situações em que múltiplas respostas são válidas. Para enviar as escolhas como uma lista ao servidor, basta adicionar `[]` ao atributo **`name`**, tornando o processamento dos dados mais organizado no *back-end*. Já os radio buttons garantem que apenas uma opção seja selecionada em um grupo, sendo amplamente utilizados em formulários de pesquisa ou questionários. Ambos os elementos suportam atributos como **`disabled`**, que desativa opções específicas, e **`checked`**, que pré-seleciona uma ou mais opções antes do envio. A utilização desses elementos não apenas melhora a funcionalidade dos formulários, mas também facilita a coleta de dados estruturados. | ||
|
||
## Botões com a Tag `<button>` | ||
|
||
A *tag* `<button>` é poderosa, desempenhando diferentes funções dentro dos formulários. Um botão genérico, configurando o atritubo **`type`** com o valor **`button`**, é amplamente usado em conjunto com *scripts* JavaScript para executar ações personalizadas, como validações em tempo real ou exibição de mensagens ao usuário. O botão com o valor **`submit`**, por outro lado, é responsável por enviar os dados do formulário para o servidor, ativando o comportamento padrão de submissão. Já o botão com o valor **`reset`** restaura todos os campos preenchidos ao seu estado inicial, sendo útil para formulários mais longos. A combinação do botão **`submit`** com o evento **`onSubmit`** possibilita validar e manipular os dados antes do envio, garantindo que apenas informações corretas e completas sejam submetidas ao servidor. Isso é crucial para evitar erros e melhorar a integridade dos dados recebidos. | ||
|
||
## Listas de Seleção com `<select>` | ||
|
||
A *tag* `<select>` é ideal para criar menus suspensos que organizam e compactam listas de opções. Cada opção disponível no menu é definida por um elemento `<option>`, que pode ser configurado com atributos como **`selected`**, para destacar uma opção padrão, e **`disabled`**, que impede a seleção de determinada opção. O atributo **`multiple`** expande a funcionalidade do `<select>`, permitindo que o usuário selecione várias opções ao mesmo tempo. Esses menus são frequentemente usados em formulários que exigem escolhas categorizadas, como seleção de regiões, preferências de contato ou categorias de produtos. | ||
|
||
## Campos de Texto com `<textarea>` | ||
|
||
A *tag* `<textarea>` é indispensável para entradas de texto mais longas, como comentários ou descrições detalhadas. Seus atributos, como **`rows`** e **`cols`**, permitem ajustar o tamanho visível do campo, oferecendo uma experiência mais confortável para o usuário. Ao contrário da *tag* `<input>`, que é voltada para entradas curtas, o `<textarea>` oferece um espaço expansível, possibilitando maior visibilidade e edição do conteúdo inserido. Essa *tag* é amplamente utilizada em cenários que demandam coleta de informações detalhadas, como relatórios ou *feedbacks*. | ||
|
||
## Reflexão Final | ||
|
||
Este curso reforçou a importância dos formulários como um elo crucial entre o *front-end* e o *back-end*. A compreensão dos atributos, tipos de campos e validações nativas ampliou minha capacidade de projetar interfaces mais acessíveis e funcionais. Além disso, a prática com elementos como `<form>`, `<input>` e `<textarea>` consolidou o conhecimento sobre boas práticas de usabilidade e otimização. Aprender a configurar atributos avançados e a utilizar eventos personalizados é altamente aconselhado para criar interfaces mais dinâmicas e interativas. Esse aprendizado será amplamente aplicado em projetos futuros, especialmente em soluções que exigem coleta de dados robusta e interações eficientes com os usuários. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
--- | ||
layout: certificate | ||
type: course | ||
code: "Jt75rKEsWEmmomj5Adg8Hw" | ||
authority: dio | ||
certificate: | ||
name: "Working with HTML Forms" | ||
workload: "0000-00-00T02:00:00" | ||
competencies: [ | ||
html5, | ||
visual-studio-code, | ||
live-server | ||
] | ||
date: "2024-11-15T21:56:00" | ||
--- |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified
BIN
+271 Bytes
(100%)
assets/images/certificates/iAB8toXXe06dEMIaHF3Olg/thumb.jpeg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.