HTML e CSS
HTML e CSS
http://www.ev.org.br/paginas/Home.aspx
www.ev.org.br: Endereço
paginas: Subárea
Então o URL é:
Protocolo usado para acessar o arquivo / Endereço do servidor /
Área do servidor onde quer encontrar o arquivo / Nome do arquivo
no servidor.
Linguagem de marcação
Para criar páginas WEB com textos descritivos e informações
separadamente, utilizamos uma linguagem de marcação.
As páginas WEB são armazenadas em arquivos com extensão htm
ou html. Isso assegura que elas são acessíveis por qualquer
navegador em qualquer parte do mundo.
<!Doctype HTML>
A tag <!Doctype HTML> é uma informação ao navegador sobre qual
o tipo de documento HTML esperar.
Existem versões do HTML, sendo a versão 5 a mais recente.
A tag acima diz ao navegador que o documento que eu vou criar
agora é um documento HTML5.
Tags <HTML> </HTML>
- São os elementos básicos de um documento HTML para
especificar o formato do conteúdo de uma página WEB.
- Os sinais <> permitem aos navegadores distinguir as tags de um
texto comum e o conteúdo delas pode ser digitado tanto em letras
maiúsculas quanto em minúsculas.
Abrir uma tag é iniciar uma ação que aquela tag faz.
Fechar uma tag é finalizar uma ação que aquela tag faz.
Se você quer ver o visual dessa página HTML, basta abrir esse
arquivo em qualquer navegador.
ISO-8859-1
A ISO-8859-1 estendeu a tabela ASCII com o 8º bit para colocar
acentos, ç, e outros carecteres. A ISO-8859-1 ficou também
conhecida como Latin1, pois foi a primeira tabela a suportar idiomas
latinos.
No ASCII, se o byte tem o número 1 como terceiro bit, então a letra
é minúscula. Se for 0 como terceiro bit, então a letra é maiúscula.
A ISO-8859-1 possibilitou o suporte aos seguintes idiomas:
• Afrikaans
• Albanian
• Basque
• Breton
• Corsican
• English
• Faroese
• Galician
• Icelandic
• Irish
• Indonesian
• Italian
• Leonese
• Luxembourgish
• Malay
• Manx
• Norwegian
• Occitan
• Portuguese
• Rhaeto
• Romanic
• Scottish Gaellic
• Scots
• Southern Sami
• Spanish
• Swahili
• Swedish
• Tagalog
• Walloon
Unicode
Na época do ASCII, ainda não existia internet direito. O que havia
era rede privada entre empresas.
Com a popularização da internet, era um problema acessar sites
estrangeiros. O computador nos EUA tinha a sua tabela de
caracteres e o computador no Japão tinha a sua outra tabela de
caracteres. Era impossível ler os arquivos transferidos.
Para resolver isso, surgiu o Unicode.
O Unicode suportaria todos os caracteres de todos os idiomas e os
emojis.
No Unicode UTF-8, um caractere ocupa entre 1 e 6 bytes. Depende
do caractere.
ASCII → 1 byte → 90% dos dados são assim (precisam só de
ASCII).
Latin1 supplement → 2 bytes.
O UTF-8 estendeu a ASCII e a ISO-8859-1.
Até agora, a UTF-8 possui caracteres que ocupam até 4 bytes de
memória.
A utilização de 5 e 6 bytes ainda não foi aprovada.
Com o UTF-8, é possível tabelar todos os caracteres de todos os
idiomas e ainda sobram os 5 e 6 bytes a serem utilizados.
A maioria dos dados possuem caracteres que ocupam entre 1 e 2
bytes, fazendo com que o UTF-8 não seja tão pesado.
Os caracteres de outros idiomas como árabe, coreano, japonês ou
mandarim ocupam entre 3 e 4 bytes e esses caracteres não são tão
utilizados quanto os caracteres de 1 a 2 bytes.
O UTF-8 consegue suportar até 1.112.064 caracteres.
O UTF-8 não só suporta caracteres de idiomas, como também
suporta vários emojis e símbolos especiais.
UTF-32
O UTF-32 usa sempre 4 bytes para representar um caractere.
Um arquivo de 100 caracteres em UTF-32 pesa 400 bytes, ou seja,
quatro vezes mais.
Aqueles 90% dos dados que utilizam os caracteres mais comuns
que pesam entre 1 e 2 bytes, agora cada caractere vai pesar 4
bytes.
UTF-32 é pesado e não é recomendado.
UTF-16
O UTF-16 usa sempre 2 bytes, mas não é expansível como o UTF-
8.
O UTF-16 BE é um novo UTF-16, que agora é extensível.
Inserindo efeitos
Negrito
Negrito em inglês é bold.
É muito utilizado para destacar partes de um texto.
Por ser bold, a sua tag é o <b>.
A tag <Strong> também cria um texto em negrito.
Itálico
O efeito itálico (italic) é para destacar termos em outro idioma ou
citações.
Sublinhado
O efeito sublinhado (underline) é utilizado para que os usuários não
confundam o texto destacado com links.
Alterando o alinhamento do texto
No Word, você pode mudar o alinhamento do texto:
Alinhando à esquerda:
Alinhando no centro:
Alinhando à direita:
Alterando a fonte
Independentemente da fonte na qual o código o HTML é digitado, a
visualização da página WEB é sempre com a mesma fonte: Times
New Roman. Pois é, essa é a fonte padrão.
Caso você deseje utilizar outra fonte, alterar tamanho ou cor, será
preciso fazer o uso da tag <FONT></FONT>.
Essa tag normalmente vem acompanhada dos atributos face, size e
color. Eles servem para alterar a fonte, o tamanho e a cor do texto,
respectivamente.
Você pode, teoricamente, escolher qualquer fonte existente, mas na
verdade ela só aparecerá em computadores que tiverem tal fonte
instalada.
Portanto, para não acontecer isso, escolha uma fonte que já vem
instalada no sistema operacional, presente na maioria dos
computadores: Arial, calibri, comic sans MS e verdana.
Face
Um dos primeiros atributos utilizados com a tag <font> é o face, que
permite alterar o tipo da fonte.
Novamente o Visual Studio Code está reclamando porque isso é
papel do CSS. Isso é estilização.
Hoje em dia, não é muito aceito fazer estilização com HTML. Tudo
isso é jogado em um arquivo CSS.
Size
Size altera o tamanho da fonte.
No atributo size, você passa um número de 1 a 7, sendo 1 o menor
tamanho e 7 o maior tamanho.
Size lembra muito um exame de oftalmologista.
Color:
Color é um atributo para mudar a cor da fonte.
A cor pode ser definida pelo nome da cor ou por um código
hexadecimal.
Nomes de cores:
• Aqua
• Black
• Blue
• Fuchsia
• Gold
• Gray
• Green
• Indigo
• Lime
• Maroon
• Navy
• Olive
• Purple
• Red
• Salmon
• Sienna
• Silver
• Teal
• White
• Yellow
Curiosidade: RGB
As cores em HTML são definidas em notação hexadecimal pela
combinação dos valores RGB (Red, Green e Blue).
Os valores em hexadecimal são definidos em três pares de
números, começando em 00 (0 em decimal), e terminando em FF
(255 em decimal). Cada símbolo hexadecimal começa sempre com
o símbolo hash (#).
Com a combinação dos três valores é possível obter mais de 16
milhões de cores (255 x 255 x 255).
Quebra (pular) de linha <BR>
Como demonstrado mais anteriormente, a tag <br> pula uma linha.
Também há como pular uma linha e desenhar uma linha reta.
É o Horizontal Ruling <hr>.
Assim como o <br>, a tag <hr> não precisa ser fechada.
Criando subtítulos
Agora, você verá como adicionar títulos e subtítulos em uma página
WEB. Para isso, você utilizará a tag Heading <Hx> </Hx>, onde x é
um número que representa o nível do tópico. Você pode criar até 6
tipos de subtítulos.
O uso de subtítulos facilita o entendimento do conteúdo.
Comentários
Comentários são úteis para deixar mensagens para outros
programadores que olharem seu código, seja para entendê-lo
melhor, seja para deixar um lembrete de algo que falta.
A forma de escrever comentários no HTML é diferente das
linguagens de programação.
Para escrever um comentário em HTML, você utiliza uma tag assim:
<!------------meu comentário aqui----------->
TAG preformatted
Por padrão, os navegadores não exibem os espaços extras e linhas
em branco de um documento HTML.
Para que o usuário visualize a página WEB com os espaços e
linhas em branco que você definiu no documento HTML, é
necessário utilizar a tag preformatted (pré-formatado), com a
sintaxe <PRE> </PRE>.
O navegador exibe o bloco do texto exatamente como está escrito
no HTML.
Tipos e funções das listas
Lista é uma coleção de itens relacionados. Você usa uma lista para
organizar dados com uma sequência de passos ou para listar itens
em um grupo.
O HTML possui dois tipos de listas: Numeradas e não numeradas.
Ou:
A. São Paulo
B. Rio de Janeiro
C. Belo Horizonte
D. Vitória
JPEG ou JPG
Joint Photographic Experts Group
É o método mais utilizado para comprimir imagens fotográficas. Foi
introduzido em 1983 e suporta até 16,8 milhões de cores. Não
permite imagens com fundos transparentes.
GIF
Graphics Interchange Format
Foi introduzido pela CompuServe em 1987 e desde então foi
amplamente utilizado na WEB. Seu formato suporta oito bits de
pixel, permitindo o uso de uma paleta de até 256 cores. Utiliza o tipo
de compressão LZW e é mais indicado para gráficos, ícones e
imagens que não necessitam de muitas cores. Permite imagens
com fundo transparente.
PNG
Portable Networks Graphics
É o substituto do GIF. No início de 1995, o padrão de compressão
LZW foi patenteado pela empresa Unisys, que anunciou a cobrança
de royalties para o uso deste tipo de arquivo. Esta informação,
aliada à crescente capacidade de exibição de cores nos
computadores, levou à criação do PNG, que assim como o JPG,
exibe até 16,8 milhões de cores e como o GIF, permite fundo
transparente.
Criando links
O que são links?
Links são conexões pelas quais você conecta páginas que podem
ser do mesmo website, externas ou ainda conectar páginas a outros
documentos.
Os links podem ser criados no texto e em outros elementos do
website, como imagens ou itens de um menu.
Onde:
A: Abertura da tag anchor.
HREF: Atributo usado para especificar a URL do documento linkado
ou interligado.
URL: Endereço da página ou documento a ser linkado.
/A: Finalização da anchor.
Ao especificar uma URL apropriada para um serviço de internet,
você também pode linkar a sua página WEB a esse serviço. Por
exemplo, você pode criar um link entre a sua página e o seu e-mail:
Selecionado o link, o navegador ativa o programa de e-mail, neste
caso, o Microsoft Outlook.
Criando links para seções na mesma página
Você com certeza já usou a Wikipedia várias vezes e se deparou
com isso:
Isso é uma lista de links, mas quando você clica nesses links, você
não acessa outra página WEB. Você acessa seções da mesma
página em que você está.
Por exemplo, vou clicar no link número quatro:
Ao clicar naquele link, eu continuei na mesma página da Wikipedia,
mas fui movido para a seção “As Colônias Americanas e o Império
Português”.
Esse tipo de link que navega de seção em seção é geralmente
usado para páginas que possuem textos extensos.
A tag anchor também é utilizada para criar links de seção.
Você especifica a URL do documento que deseja interligar, com o
nome da seção precedido pelo símbolo # (hash).
No entanto, será preciso utilizar um atributo que fará o navegador
entender onde deve ir após o usuário clicar no link criado. Este
atributo é o NAME.
O navegador exibe o link e, quando selecionado, exibirá a seção
que começa com o nome especificado.
Esse link faria mais sentido com textos maiores.
Criando links em imagens
Agora aprenderemos a criar links em imagens, que podem ser
usadas para acessar outras imagens, páginas WEB ou
documentos.
Usamos a combinação da tag anchor para criar um link em uma
imagem. É a combinação de anchor com image.
Personalizando links
Você observou então, que para inserir um link numa imagem
usamos dois conceitos aprendidos anteriormente: Inserção de links
e inserção de imagens.
Também é possível personalizar cores dos links.
Dependendo da cor de fundo utilizada e a opção feita pela cor de
texto, a cor do link pode ficar comprometida visualmente em sua
página.
Para resolver isso, podemos utilizar três elementos que modificam a
apresentação dos links.
Sintaxe:
<BODY link=”cor” vlink=”#cor” alink=”cor”>
Combinando TAGS
Você pode utilizar combinações de tags em páginas WEB para
melhorar a sua aparência e funcionalidade.
Dentre os diversos tipos de combinação que podemos fazer, será
mostrado a você dois deles. O primeiro será a combinação da tag
anchor com as seguintes tags:
• Formatação
• List
• Image
Tag anchor com a tag lista e tag imagem
O navegador exibe a lista de imagens junto com o texto de
descrição. Esta combinação melhora a aparência da lista.
Para isso, você define cada item como um item utilizando uma
combinação da tag anchor com a da tag image. Desta forma, você
pode construir uma lista de imagens, que contém links para outras
páginas, documentos ou até mesmo outras imagens.
Um recurso comum na internet é a utilização de thumbnails, que
são imagens em tamanhos reduzidos.
Ficou muito grande
Usando imagens mapeadas
O que são imagens mapeadas?
Uma imagem mapeada é uma imagem dividida em diferentes áreas
e cada área é interligada a um documento. Uma imagem mapeada
é diferente de um link em uma imagem.
No caso da imagem mapeada, o navegador, primeiramente,
identifica a área da imagem que você selecionou e então a URL do
documento vinculado a esta área.
O exemplo mais comum de uso é quando existe a necessidade de
uma mesma imagem direcionar o usuário para duas ou mais
páginas WEB diferentes, como se fosse um menu.
(x, y) = Centro
Coordenadas do círculo = “x, y, r”, onde R é o Raio em pixels.
Coordenadas do polígono: “x1, y1, x2, y2, x3, y3...”.
São todos os vértices.
Sintaxe:
<img src=”menu.gif” Alt=”Menu” usemap=#menu>
A tag <MAP>
Observe a imagem abaixo:
Cada item na imagem possui uma seção geométrica que quando
clicada direciona a um link.
A tag map trabalha com isso. Você “corta” partes de uma imagem e
cada parte te direciona a uma página WEB.
Parabéns 😊
Se você chegou até aqui, então você possui todo o conhecimento
básico de HTML!
Mas não perca o embalo! Vamos seguir com o HTML avançado!
HTML AVANÇADO
Atributo border
Para criar um efeito que facilite a visualização da tabela, você pode
inserir uma borda.
Neste caso, você utilizará o atributo BORDER. A espessura da
borda é definida em pixels.
Sintaxe:
<TABLE BORDER=”número de pixels”>
Borda colorida
Você também pode inserir uma borda colorida. Neste caso, usa-se
o atributo BORDERCOLOR.
Atributo BGCOLOR (Background color)
O atributo BGCOLOR permite a você definir uma cor de fundo à
tabela toda, quando usado na tag <TABLE>.
Pode ou não ser utilizado com BORDER ou BORDERCOLOR.
É possível, também, definir uma cor de fundo para partes da tabela
usando o atributo BGCOLOR com as tags <TR> e<TD>:
Atributo background
O atributo background permite a você definir uma imagem de fundo
em uma tabela.
A imagem é carregada em seu tamanho normal e é distribuída em
pequenas partes, até preencher o conteúdo da tabela.
Atributos height e width
Height significa altura e width significa largura. Esses atributos
servem para dimensionar a tabela em pixels ou porcentagem, uma
vez que, por padrão, a célula da tabela assume o tamanho do maior
dado inserido:
Observe que neste exemplo a largura foi definida para 300 pixels e
sua altura ocupara 20% da janela do navegador:
Atributo align
O atributo align faz o alinhamento da tabela em relação à página
WEB.
O valor do atributo pode ser “left” (esquerda), “right” (direita) ou
“center” (centro).
Atributo cellspacing
Cellspacing significa espaçamento entre células.
O cellspacing vai especificar o espaço entre a borda da tabela e as
células, em pixels.
Atributo cellpading
O cellpading especifica o espaço entre os dados e a borda de uma
célula, em pixels.
Perceba que os dados da tabela acima estão encostados na
esquerda.
O cellpading faz esses dados se distanciarem das bordas das
células.
TD Align:
Alinha horizontalmente os dados de uma célula.
TD Valign
Alinha os dados verticalmente.
TD Colspan
O atributo colspan é utilizado para mesclar uma célula em mais de
uma coluna.
O valor do colspan é o número de colunas unificadas.
TD Rowspan
É utilizado para mesclar células em mais de uma linha.
Imagine que existem duas pessoas com o sobrenome Santos:
Então posso mesclar:
Criando e formatando formulários
Os formulários são questionários para coletar dados.
Os formulários apenas coletam dados, sem processá-los. Quem faz
isso são os scripts de processamento (programas armazenados no
servidor) e o navegador exibe o resultado em sua janela.
FORM
Utilizamos a tag <FORM> para iniciar um formulário e a tag
</FORM> para encerrar um formulário.
Atributo action
O action é o primeiro atributo utilizado. Ele especifica a URL do
script que processará os dados do formulário.
No exemplo acima, os dados serão enviados ao meu e-mail.
Atributo METHOD
Method significa a maneira de envio dos dados do formulário para o
servidor WEB, para que sejam processados.
Existem dois métodos principais que podem ser utilizados: POST e
GET.
POST
O navegador enviará diretamente o fluxo de dados para o script CGI
no servidor WEB.
GET
O fluxo de dados será anexado à URL especificada no atributo
ACTION e enviado ao servidor como única URL.
O valor GET é utilizado para respostas únicas, como uma string
texto.
INPUT
INPUT significa entrada, ou seja, é um componente para a entrada
de dados que o usuário digitou. Para desenhar um componente em
uma página HTML, você utiliza a TAG <INPUT> com vários
atributos.
Atributo TYPE
O atributo TYPE diz o tipo do objeto do formulário. Se nada for
especificado, o padrão é o tipo texto (TextBox).
Atributo VALUE
O atributo VALUE especifica o valor inicial do componente de
entrada (objeto do formulário). É opcional, com exceção de quando
o TYPE é “radio” ou “checkbox”.
Atributo NAME
O atributo NAME nomeia cada objeto do formulário, para que o
script possa manipular os dados.
Atributo MAXLENGTH
O atributo MAXLENGTH estabelece a quantidade máxima de
caracteres quando o componente for do tipo “text” ou do tipo
“password”. O padrão é uma quantidade ilimitada de caracteres.
Atributo SIZE
Especifica o tamanho inicial do controle. A largura é dada em pixels,
com exceção de quando o valor for “text” ou “password”. Nestes
casos, o valor refere-se ao número de caracteres.
Atributo SRC
Quando o valor do TYPE for “image”, este atributo especifica a
localização da imagem usada para decorar o botão de enviar.
Atributo CHECKED
Quando TYPE for “radio” ou “checkbox”, este atributo especifica que
o botão (checkbox) está selecionado.
Atributo REQUIRED
O atributo REQUIRED vai obrigar o usuário digitar alguma coisa no
campo. O REQUIRED não aceita vazio.
Atributo PLACEHOLDER
O atributo PLACEHOLDER define uma marca d’água em um campo
geralmente do tipo “text”. O PLACEHOLDER é útil para exemplificar
ao usuário o formato do dado que ele deve digitar.
Valores do TYPE
Inserindo campos:
Texto
Imagem
Botão
File
Submit
CheckBox:
Reset
Password
Hidden
Date
Range
Email
Color
Search
Tel
Atributo VALUE
Por padrão, os navegadores exibem uma caixa de texto vazia no
formulário. Caso exista a necessidade de exibir um padrão, deve-se
usar o atributo value (ou placeholder).
RadioButtons e CheckBoxes
Em um formulário de pedido online, você pode usar um conjunto de
RadioButtons para verificar a bandeira do cartão de crédito do
cliente.
E esse é o checkbox:
TextArea
A tag <TEXTAREA> </TEXTAREA> cria uma caixa de texto maior,
permitindo linhas e colunas.
Os atributos ROWS, que especifica o número de linhas (altura) e
COLS, que especifica o número de colunas (largura) da área de
texto, são utilizados com essa tag.
Botões SUBMIT e RESET
Submit é um botão de enviar. Em um formulário, o botão submit
envia ao servidor WEB a informação digitada pelo usuário para ser
processada pelo script CGI correspondente.
O botão RESET é o botão de limpar. Esse botão apaga as
informações inseridas em todos os campos.
ListBox e ComboBox
Ambas as opções são criadas pela tag <SELECT> </SELECT>.
Atributos
SRC (source): Especifica a URL que você deseja carregar em um
frame.
Atributo NAME
Agora você aprenderá a apontar frames, ou seja, direcionar o link
para abrir no frame desejado.
Quando usamos frames, podemos querer manter o conteúdo de um
e carregar páginas WEB em outro. Para fazer isso, apontamos o
link para um frame.
O frame em que o conteúdo permanece constante é chamado de
estático e o outro, no qual o conteúdo muda, é chamado de
dinâmico.
Para apontar frames, você precisa primeiro especificar nomes para
os frames, usando o atributo NAME com a tag FRAME.
O código que você usa para especificar o nome Main para um
frame que exibirá o arquivo phil.html é
<FRAME SRC=”phil” NAME=”main”>
Apontando um FRAME
Depois de especificar um nome para um frame, você pode
especificá-lo como frame alvo em um link.
Para isto, você usa o atributo TARGET com a tag ANCHOR - link.
<A HREF = “url” TARGET = “nome_frame”>
Atributo CONTENT
O atributo content aceita somente texto e especifica o conteúdo da
informação META. Seu valor depende do valor dos atributos NAME
ou HTTP-EQUIV. Veja os dois casos:
Atributo NAME
O atributo NAME fornece um nome para a informação no atributo
CONTENT.
Exemplo:
Atributo CHARSET
O atributo CHARSET define a tabela de caracteres que o
navegador deve utilizar para interpretar a sua página WEB.
Sempre utilize UTF-8.
Exemplo META
IFRAME
Eu sinceramente não sei qual é a diferença entre <FRAME> e
<IFRAME>. Bom, no <IFRAME> você pode exibir uma outra página
WEB em uma área da sua página WEB.
No exemplo abaixo, estou mostrando o site do Bootstrap em um
pedaço da minha página:
Vamos aumentar esse IFrame:
Trabalhando com mídia no HTML
Você pode inserir arquivos de mídia no HTML como vídeos e
áudios.
Para inserir um vídeo salvo no seu PC:
Para inserir um áudio salvo no seu PC:
Vídeo:
• MPEG: Primeiro formato de vídeo popular na WEB. Não é
mais suportado pelo HTML.
Áudio:
• MIDI: Formato principal para todos os dispositivos eletrônicos
como sintetizadores e caixas de som de computadores. Os
arquivos MIDI não contêm sons, mas possuem notas digitais
que podem ser tocadas por produtos eletrônicos. É bom para
todos os computadores e hardware de música, mas não
navegadores WEB.
PARABÉNS!!!!
Se você chegou até aqui, o seu conhecimento
em HTML é considerado avançado!
Classes
Já as classes são um conjunto de atributos predefinidos com o
objetivo de formatar um elemento. Esse conjunto de informações
facilita a configuração dos elementos HTML.
Podemos aplicar a mesma classe em vários elementos distintos.
Lembre-se que as classes são um tipo de seletor!
Classes do CSS não são como classes de linguagens de
programação!!!!!
Seletores
Os seletores são a declaração que o CSS utiliza para identificar
elementos HTML. Por meio dos seletores, podemos aplicar a
formatação em quase qualquer parte da página WEB.
No HTML:
<p class=”nomeDaClasse”> Seu texto </p>
Sobre o ID: Uma coisa muito importante que devemos saber sobre
o ID é que ele deve ser único nos elementos. Duas tags não podem
ter o mesmo ID (mas podem ter a mesma classe).
O ID é um identificador e o ID não pode se repetir em uma página
WEB.
Inserção de imagens
Podemos inserir imagens na página WEB por meio de CSS. A
propriedade que possibilita a inserção de imagem pelo CSS é o
background. A propriedade background é dividida de vários modos
e pode assumir valores específicos.
Tableless e HTML5
Tableless
Um site que utiliza os padrões desenvolvidos pelo W3C é
considerado um site tableless. Desse modo, um site tableless não
usa tabelas na composição de seu layout.
No lugar de tabelas, um site tableless utiliza as três camadas
(informação, formatação e comportamento).
Em HTML, existe um elemento que auxilia a composição de sites
tableless.
As divs <DIV> são essenciais na composição de sites tableless!
DIVs
Se você conhece o Windows Forms, WPF ou JavaFX, eu te digo
que uma div seria um PANEL, só que em HTML.
Uma div seria uma divisão na sua página WEB. Cada divisão terá
sua altura, largura, conteúdo... Você define.
Agora estou limitando a div para que tenha uma altura de 170 pixels
e largura de 100 pixels.
Funcionou com o texto, mas não funcionou com a imagem.
Talvez, para resolver isso, é necessário criar uma classe para a
imagem e limitar as dimensões nessa própria classe.
Continuando...
(Mas esqueci de mencionar): O seletor ID é geralmente usado para
JavaScript, e não, CSS.
É uma convenção usar o seletor ID somente para scripts PHP ou
Javascript (preferivelmente Javascript).
Margin e Padding
Agora que já criamos a base da estrutura, que tal melhorarmos a
aparência de nossa página? Abra a página de estilo para definirmos
valores para algumas propriedades.
Por padrão, alguns elementos HTML já vêm com valores
predefinidos em suas propriedades. Por exemplo, os parágrafos
<p> possuem margin e padding nativos. Desse modo, a página
mantém o mínimo de legibilidade mesmo que o CSS não seja
carregado.
Margin
Padding
Exemplo ABSOLUTE:
Se a div B está dentro da div A, o ponto inicial da div B é o canto
superior esquerdo da div A.
Vamos posicionar a nossa div logo para ficar claro.
No exemplo que acabamos de ver, definimos a position como
absolute. Isso significa que a div logotipo terá como coordenada
inicial o top e left do container do qual faz parte – o header.
Como o header tem o tamanho da janela e está no topo da página,
a div logo se posicionará no canto superior esquerdo da tela.
Também definimos a largura da div logo em 300px e altura como
auto. Assim, a div irá se adequar de modo proporcional ao valor da
largura.
FORMATAÇÃO DE IMAGEM
Agora, precisamos formatar a imagem que inserimos. Observe que
a imagem está maior do que a largura que definimos para a div
logo. Para isso, vamos usar uma técnica conhecida como
aninhamento (NESTING).
Como já temos o seletor class para a nossa div, não precisamos
criar outro para a imagem. Iremos aninhar outro seletor. Nesse
caso, pode ser o próprio elemento IMG:
Perceba que não criamos outra class para <IMG>, apenas
utilizamos a técnica de aninhamento para fazer a configuração.
Observe também que o Width foi definido como 90%. Isso significa
90% de 300px, que corresponde à largura da div logo, e um margin-
left de 10%.
Portanto, a imagem do logo terá 280px de largura e 20px de
margin-left.
SECTION
Agora que já definimos o estilo para o topo da página, iremos
adicionar a imagem principal da HOME.
Em vez de usarmos uma div como container para a imagem
principal do site, utilizaremos a tag <SECTION>.
POP-UPs
Já configuramos o topo e a imagem principal. Agora vamos inserir
textos na página.
Para deixar a página mais elegante e com mais interação,
utilizaremos POP-UPs para mostrar os textos de conteúdo da
home.
O POP-UP que queremos inserir não vai abrir em uma janela nova
do navegador. Vamos utilizar um conceito conhecido como Janela
Modal. A Janela Modal é uma janela secundária ou janela filha da
tela principal. A função dessa janela secundária é fornecer
informações importantes ao usuário.
Para isso, criaremos três DIVs que servirão de container para os
textos da página. Vejamos:
Observe que criamos três DIVs com Ids distintas, mas com classes
iguais.
Após criar as três DIVs e atribuir-lhes ID e CLASS, chegou a hora
de adicionar os elementos de cada Pop-UP.
Para a box com o texto, vamos criar uma div. Dentro dessa div,
vamos inserir as tags:
• <a> com a função de fechar o pop-up.
• <h1> para o título do conteúdo.
• <p> para definir um novo parágrafo.
POINTER-EVENTS
A propriedade pointer-events com o valor ‘none’ informa ao
navegador que os elementos que possuem a classe modalDialog
não devem ser alvo de eventos realizados pelo mouse. Por
exemplo: Cliques e hovers.
DISPLAY
Para finalizar, a propriedade display permite que você indique ao
navegador como os elementos devem ser renderizados pelo motor.
Existem cerca de vinte valores possíveis para o display, iremos
utilizar apenas BLOCK e NONE.
BLOCK
Indica ao navegador que o elemento deve ser renderizado em
bloco, juntamente com seus filhos ou elementos contidos nele.
NONE
Permite desativar a exibição do elemento. Desse modo, o
documento é renderizado como se o elemento não existisse.
ÂNCORA
Quando trabalhamos com âncoras em um site, utilizamos a tag <A>
para nos auxiliar.
Dito de outro modo, podemos utilizar um ID como valor do HREF de
uma tag <a>. Desse modo, criamos uma ligação ou âncora da tag
<a> com o elemento que possui o ID informado.
Ao clicar no link, o usuário é direcionado para a posição em que o
elemento está. Com isso, o usuário visualiza o conteúdo que deseja
de forma rápida.
Podemos relacionar esse recurso a um objeto, de forma a
manipular seu comportamento com o CSS. Para tanto, precisamos
da pseudo-classe:TARGET.
PSEUDO-CLASSE
A pseudo-classe é uma palavra adicionada a seletores. Tal palavra
indica o estado especial de um elemento ativo. Neste caso, quando
clicamos no link (tag<a>) é ativada a ligação (âncora), e a tela é
direcionada até o local em que o elemento que possui o mesmo ID
do atributo HEF da tag <a> está. Com isso, esse elemento pode ser
manipulado pelo seletor :TARGET.
1- Estamos informando ao navegador que a DIV ficará visível
(display: block).
ELEMENTOS DO POP-UP
Para definir os valores para a DIV, para a tag <p> e para a imagem
inserida no primeiro POP-UP, iremos utilizar a técnica do
aninhamento.
Também declaramos a propriedade margin apenas em uma linha.
Nesse caso, estamos informando no navegador que a DIV terá 10%
de MARGIN-TOP.
Nas demais, o navegador pode realizar o cálculo para centralizar:
• Margin-top – 10%;
• Margin-right – auto;
• Margin-bottom – auto;
• Margin-left – auto.
Line-Height: 10px;
Line-Height: 25px;
ATIVAÇÃO DO POP-UP
Agora que já finalizamos a formatação do pop-up, iremos inserir as
tags para ativá-lo.
Assim como a tag HEADER indica o cabeçalho do conteúdo, existe
uma tag que indica o rodapé da página.
Dessa forma, podemos dividir a página por sessões e mantê-la
organizada. O FOOTER(rodapé) é a tag que tem essa função.
1- Insere a tag footer.
4- Após criar as DIVs, crie o título de cada texto. Para isso, use a
tag <H3>.
REFERÊNCIAS:
Essas anotações vieram de cursos online que eu fiz na Escola
Virtual da Fundação Bradesco e na minha própria faculdade
também (Faculdade Engenheiro Salvador Arena).
Essas anotações também vieram do site W3SCHOOLS.
Links:
Fundação Bradesco - Escola Virtual (ev.org.br)
Estilo do texto:
Font-style: italic;
Font-weight: bold;
Tamanho do texto:
Font-size: 30px;
Font-size: 2.5em;
1em = 16px.
Ícone
Adicionar um ícone na aba:
Antes:
Depois:
Links
Alterando a cor do link:
A:link: Link normal, que não foi visitado.
A:visited: Um link que o usuário visitou.
A:hover: O link quando o mouse se move sobre ele.
A:active: O link quando é clicado.
Dropdown de botão:
Imagem DROPDOWN
DROPDOWN no menu (NAVBAR)
Galeria de imagens
Fazendo cards de imagens, formando uma galeria.
Sombra
A sombra cria literalmente uma sombra no elemento.
Se você digitar ‘grey’ em seguida, a sombra fica mais leve.
Transições
As transições CSS te permitem alterar os valores das propriedades
muito suavemente, sob uma dada duração.
Exemplo:
Ao passar o mouse:
A regra @keyframes
Quando você especificar os estilos CSS dentro da regra
@keyframes, a animação gradualmente mudará do estilo atual para
o novo estilo em certos momentos.
Para fazer uma animação funcionar, você deve ligar a animação a
um elemento.
O exemplo seguinte ligar a animação “exemplo” ao elemento <div>.
A animação durará 4 segundos, e gradualmente mudará a cor de
fundo do elemento <div> de “vermelho” para “amarelo”.
NOTA: A propriedade Animation-duration define quanto tempo uma
animação deveria levar para completar. Se o Animation-duration
não for especificado, nenhuma animação ocorrerá, pois o valor
padrão é 0s (zero segundos).
Imagem circular:
Thumbnail
Use a propriedade border para criar thumbnails.
E para essa thumbnail sombrear (ser um link):
Imagens centralizadas
Para centralizar uma imagem, define margin-left e margin-right
como auto e deixe o display como block.
Cards
Você pode utilizar imagens como cards.
Mas esses cards ficaram muito grandes para mim.
Procure fazer cards de outra maneira ou com Bootstrap.
Masking
Você pode criar uma camada de máscara com o CSS para cobrir
parcial ou completamente um elemento.
A propriedade mask-image
A propriedade mask-image especifica uma camada de máscara em
uma imagem.
Essa camada de máscara pode ser um arquivo PNG, SVG, um
gradiente CSS ou um elemento SVG<mask>.
Clique em Download.
Faça download dessa opção.
Containers do Bootstrap
Sempre que você digita algo no HTML, por padrão o seu elemento
está sempre colado na esquerda.
Notação do Bootstrap
O Bootstrap possui várias classes cujos nomes podem seguir um
padrão.
Esse padrão é os nomes terminarem com “sm”, “md”, “lg”, “xl” e
“xxl”.
Exemplo:
• Container-sm
• Container-md
• Container-lg
• Container-xl
• Container-xxl
Sm = small (pequeno)
Md = médium (médio)
Lg =large (grande)
Xl = extra large (extra grande)
Xxl = extra extra large (extra extra grande).
Thumbnail:
Rounded:
Essa classe vai arredondar as pontas da imagem:
Tabelas
O Bootstrap é perfeito para estilizar tabelas.
Você também pode criar uma tabela listrada:
E a tabela listrada possui variantes!
E o Bootstrap pode estilizar uma tabela cujas linhas são
selecionadas ao passar o mouse:
Bootstrap FORMS
Você pode usar o Bootstrap para deixar seu formulário mais bonito.
Antes:
Depois:
Combobox ou Listbox:
Checkbox e Radiobutton
Bom, pelo menos na minha máquina, o checkbox e radiobutton já
possuem aparências agradáveis.
Range
O Bootstrap customiza o range também:
O Range também ocupa toda a largura do container.
As propriedades “min”, “max” e “step” configuram os valores e o
passo do range.
Isso é complicado de explicar. É mais fácil de entender aplicando ou
vendo exemplo. Sugiro que veja essa parte do range lá na
documentação do Bootstrap.
Floating labels
Você pode fazer com que o label que descreve o campo flutue:
Grid
Você pode separar os campos do formulário em linhas e colunas:
Validação
O Bootstrap te permite alterar a aparência do formulário quando o
usuário digita algo errado ou deixa um campo obrigatório em
branco.
Accordion
O accordion é uma área de texto interativa que pode ser exibida ou
escondida, dependendo do clique do usuário.
As cores do Bootstrap
O Bootstrap possui algumas cores padrão em alguns elementos
como tabelas, textos e botões.
Cada cor tem um nome:
• Primary: É um azul
• Secondary: É um cinza
• Success: É um verde
• Danger: É um vermelho
• Warning: É um amarelo
• Info: É um azul mais claro
• Dark: Escuro
Links do Bootstrap também possuem essas cores.
Fundos também podem ter essas cores.
Porém, a documentação do Bootstrap diz que há mais cores ainda.
Acesse esse link para conhecê-las:
https://getbootstrap.com/docs/5.1/customize/color/
Alertas
Alertas são abas que aparecem no topo do site após o usuário ter
concluído uma ação (preencher um formulário, por exemplo).
O usuário preencheu um formulário e clicou em “enviar”.
O servidor retorna a página HTML ao usuário com uma mensagem
de que deu tudo certo no preenchimento do formulário.
Essa mensagem aparece por meio de um alerta.
Veja todos os tipos de alerta do Bootstrap:
Badge
“Badge” pode ser entendido como “selo”, “estampa”, “carimbo” ou
“distintivo”.
Badge é bom para chamar a atenção do usuário para qualquer
coisa que você pensar. Um exemplo é notificar o usuário sobre o
desconto de um produto.
Pop-UP
No estudo do CSS, nós fizemos um Pop-Up do zero.
O Bootstrap também tem um Pop-Up pronto.
E sim, o código do pop-up também é muito longo para mostrar em
uma imagem.
Link da documentação do pop-up:
https://getbootstrap.com/docs/5.1/components/modal/
Menus
O Bootstrap também possui menus prontos para você usar.
Basta consultar “Navbar” na documentação.
Paginação
Paginação é uma coleção de botões que linkam para outras
páginas HTML após o limite de itens de uma lista que podem ser
exibidos.
O objetivo da paginação é não deixar a lista muito longa na
visualização.
Às vezes, uma lista possui tantos itens que se carregar tudo de uma
vez, a resposta do servidor será lenta e pode demorar para carregar
no cliente.
Considerações finais
Parabéns por ter tido a paciência de ter chegado até aqui (sem
pular, é claro).
Espero que tudo o que foi passado nesse guia tenha sido bastante
útil para você.
Recomendo estudar Javascript e ASP.NET Core após o fim da
leitura desse guia de Front-End.
Sobre o Bootstrap, você só vai aprender de verdade quando ler a
documentação.
A documentação do Bootstrap é muito fácil de ler e entender.