📚

Estudos Programação

O que o Front-End faz?

  • Lida diretamente com o usuário final, definindo como será sua interação com a interface do site;
  • Cuida da regra de negócio (tanto front quanto back lidam com a regra de negócio, mas a maior parte fica por conta do back);
    • Regra de negócio é uma lista de regras que dita o que, como, onde, quando e por que as coisas serão feitas;
    • A regra define de que maneira o negócio será gerenciado, tornando-o viável, lucrativo e/ou funcional.
  • Desenvolve o visual das páginas, aplicando cores, formas, fontes, estilos e animações;
  • Tem seus códigos executados pelo navegador.

Pilares da Web

  • HTML: conteúdo - HTML não é uma linguagem de programação, é uma linguagem de marcação usada para definir a estrutura de seu conteúdo.
  • CSS: design - cuida de toda a estilização, é uma linguagem de estilo.
  • JS: interações - torna sua página interativa e dinâmica, é uma linguagem de script/programação.

Elementos HTML

Nome do Elemento Descrição Tipo Exemplo
strong Estiliza texto como negrito inline <strong> Negrito </strong>
em Estiliza texto como itálico inline <em> Itálico </em>
u Sublinha o texto inline <u> Texto sublinhado </u>
s Corta o texto com um traço inline <s> Texto cortado </s>
p Delimita um parágrafo block <p> Um grande parágrafo </p>
blockquote Delimita uma citação block <blockquote> Penso logo existo - Réné Descartes </blockquote>
h1, h2, h3, h4, h5, h6 Delimita um cabeçalho, inicia uma nova seção block <h1> Título da Página </h1>
br Pula linha inline <br />
hr Separa o conteúdo com uma linha horizontal block <hr />
div Elemento block genérico block <div> Um bloco genérico </div>
span Elemento inline genérico inline <p> No meio de um parágrafo uma <span> palavra estilizada </span> </p>
img Delimita uma imagem inline-block <img src="logo.png" />
a Define um link inline <a href="https://google.com">Google</a>
ol Delimita uma lista ordenada block <ol>
<li> Aqui está o item 1 </li>
<li> Aqui está o item 2 </li>
</ol>
ul Delimita uma lista não ordenada block <ul>
<li> Aqui está um item </li>
<li> Aqui está outro item </li>
</ul>
li Delimita um item da lista block <ul>
<li> Aqui está um item </li>
<li> Aqui está outro item </li>
</ul>
table Delimita uma tabela block <table>
<tr>
<td> </td>
</tr>
</table>
tr Delimita uma linha da tabela block <table>
<tr>
<td> </td>
</tr>
</table>
td Delimita uma célula da tabela inline-block <table>
<tr>
<td> </td>
</tr>
</table>
link Define uma relação entre dois documentos. Usado para linkar o CSS ao HTML invisível <link rel="stylesheet" href="estilo.css">

Propriedades CSS

Nome da Propriedade Descrição Valores Exemplo
color Configura a cor da fonte cor color: red;
background-color Configura a cor de fundo cor background-color: blue;
font-size Muda o tamanho da fonte comprimento font-size: 12px;
font-weight Muda o peso da fonte número puro bold normal light font-weight: bold;
font-style Muda o estilo da fonte normal italic oblique font-style: italic;
font-family Muda a fonte nome da fonte font-family: 'Verdana';
text-align Configura o alinhamento do texto left right center justify text-align: center;
text-decoration Configura a decoração do texto none underline dotted line-through cor text-decoration: underline;
line-height Configura o espaçamento entre linhas comprimento line-height: 1.5em;
word-spacing Configura o espaçamento entre palavras comprimento word-spacing: 5px;
letter-spacing Configura o espaçamento entre letras comprimento letter-spacing: 2px;
padding Configura o espaçamento interno de um elemento comprimento padding: 16px;
padding: 1em;
margin Configura o espaçamento externo de um elemento comprimento margin: 16px 32px;
margin: 1em 2em;
border Cria uma borda ao redor do elemento e configura sua largura, estilo e cor comprimento border: 1px solid lightgrey;
border-radius Configura o arredondamento da borda comprimento border-radius: 4px;
width Configura a largura de um elemento comprimento width: 300px;
height Configura a altura de um elemento comprimento height: 700px;
object-fit Determina como o elemento irá se comportar dentro de seu espaço delimitado (content box) contain cover fill none object-fit: contain;
object-position Determina em qual região o elemento terá foco quando seu tamanho é modificado pelo tamanho da página bottom center left right top object-position: center;

Elementos básicos para formulários no HTML

Nome do Elemento Descrição Tipo Exemplo
form Delimita um formulário block <form> Todos os outros elementos estarão aqui dentro </form>
label Dita a legenda de um campo de formulário inline
input Cria um campo de formulário (apenas uma linha), seja ele do tipo (type) texto, número, data, etc inline-block
select Cria um campo de formulário que permite escolher entre opções inline-block Isso é um <select> vazio
option Define uma opção de valor para um <select> inline-block Opa, agora temos opções
textarea Cria um campo de formulário de texto longo, com mais de uma linha inline-block
button Delimita um botão inline-block

Código no HTML:

<form>

    <label for="email" >
        Inscreva-se na nossa newsletter
    </label>

    <input id="email" 
               type="email" 
               placeholder="Escreva aqui seu e-mail" />

    <button type="submit" >
        Enviar
    </button>

</form>

Como ficaria na web:

Tipos de Input

Primeiro, o que é um input? É o faz tudo do formulário!

É um campo de formulário onde o usuário poderá interagir e digitar seus dados. A entrada desse campo varia de acordo com seu tipo (ou type). Esses dados poderão ser enviados para um data base (ou banco de dados) lá no Back-end, para fins como:

  • criar contas;
  • verificar se o usuário digitou sua senha e seu e-mail corretamente para seu login ser liberado;
  • no caso de um site de compras, verificar se os dados do cartão de crédito que o usuário inseriu no formulário é válido para somente assim liberar sua compra e etc.

Além de definir o tipo correto de input a ser usado, é preciso associá-lo a um label para o usuário ter uma experiência melhor, pois além de estar explícito o tipo de informação que ele digitará, ao clicar no label seu respectivo input terá foco.

<form>

    <label for="email" >
        Inscreva-se na nossa newsletter
    </label>

    <input id="email" 
            type="email" 
            placeholder="Escreva aqui seu e-mail" />

    <button type="submit" >
        Enviar
    </button>

</form>
                        

Importante:

➜ O id do input e o for do label precisam ter o mesmo nome para associarem-se.

➜ O placeholder nada mais é do que um label dentro do próprio input. Ele determina o que estará escrito dentro do campo. Uma vez que o usuário começa a digitar algo ele some, e reaparece novamente caso o campo esteja vazio. Por isso é interessante usar o label mesmo já existindo um placeholder, pois nosso querido usuário pode esquecer para que serve aquele campo.


  • <input type="text" />:
  • <input type="email" />:
  • <input type="password" />:
  • <input type="number" />:
  • <input type="date" />:
  • <input type="checkbox" />:
  • <input type="radio" />:
  • <input type="text" />: