My SQL
My SQL
WEBSITES COM
PHP E MYSQL
Sobre o Instrutor
• Formado em Ciências da Computação e pós-Graduado em Sistemas de
Informação.
• Atuo como Gerente de TI do Coren-DF.
• Atuei por mais de 15 anos como professor universitário.
• Atuei por 5 anos como instrutor de cursos técnicos e de qualificação
profissional no Senac.
2
Sobre você
• Nome e como gostaria de ser chamado(a).
• Local onde mora.
• Porque está fazendo este curso?
• Quais são suas expectativas?
3
Sobre o curso
• Este curso tem como objetivo proporcionar ao aluno, conceito e conhecimento
sobre desenvolvimento de sites utilizando a linguagem de programação PHP,
além de apresentar as principais características de Bancos de Dados, com foco no
MySQL.
• É destinado a pessoas interessadas em desenvolver websites com linguagem de
programação PHP e Banco de Dados MySQL.
4
INTRODUÇÃO E
UTILIZAÇÃO DE UM
AMBIENTE DE
PROGRAMAÇÃO WEB
World Wide Web (WWW)
• O World Wide Web (WWW) é um termo técnico (e anglicismo de tecnologia da
informação) que foi traduzido para a língua portuguesa como rede mundial de
computadores, também conhecido como Web, que designa um sistema de
documentos em hipermídia que são interligados e executados na Internet.
• Os documentos podem estar na forma de vídeos, sons, hipertextos e imagens.
Para consultar a informação, pode-se usar um programa de computador
chamado navegador web (Internet Explorer, Google Chrome, Mozilla Firefox,
Microsoft Edge, Opera etc), para baixar informações (chamadas "documentos" ou
"páginas") de servidores web (ou "sítios") e mostrá-los na tela do usuário (tela do
utilizador).
• O usuário (utilizador) pode então seguir as hiperligações (links) na página para
outros documentos ou mesmo enviar informações de volta para o servidor para
interagir com ele. O ato de seguir hiperligações é, comumente, chamado
"navegar" ou "surfar" na Web. 7
Padrões
• A funcionalidade da web é baseada em três padrões:
• Uniform Resource Locator (URL) ou ocalizador uniforme de recursos, um sistema
que especifica como cada página de informação recebe um "endereço" único
onde pode ser encontrada.
• protocolo://domínio:porta/caminho/recurso?query_string#fragmento
• Hypertext Transfer Protocol (HTTP) ou Protocolo de Transferência de Hipertexto,
um protocolo que especifica como o navegador e servidor web comunicam entre
si.
• HyperText Markup Language (HTML) ou Linguagem de Marcação de Hipertexto,
uma linguagem de marcação para codificar a informação de modo que possa ser
exibida em uma grande quantidade de dispositivos.
8
Funcionamento
• Visualizar uma página web ou outro recurso disponibilizado normalmente inicia
ou ao digitar uma URL no navegador ou seguindo (acessando) uma hiperligação.
Primeiramente, a parte da URL referente ao servidor de rede é separada e
transformada em um endereço IP, por um banco de dados da Internet chamado
domain name system (DNS). O navegador estabelece, então, uma conexão TCP-IP
com o servidor web localizado no endereço IP retornado.
• O próximo passo é o navegador enviar uma requisição HTTP ao servidor para
obter o recurso indicado pela parte restante da URL (retirando-se a parte do
servidor). No caso de uma página web típica, o texto HTML é recebido e
interpretado pelo navegador, que realiza então requisições adicionais para
figuras, arquivos de formatação, arquivos de script e outros recursos que fazem
parte da página.
• O navegador, então, renderiza (reconstitui) a página na tela do usuário
(utilizador), assim como descrita pelos arquivos que a compõe. 9
Funcionamento - Modelo Cliente Servidor
na Web
10
Client-side
• É tudo processado no lado do cliente. O client-side é interpretado diretamente
pelo browser (navegador) do usuário.
• Sendo assim ao acessar uma página web o HTML, CSS e JavaScript são
interpretados todos pelo navegador sem intervenção nenhuma de um servidor.
Por isso podemos exibir o código fonte em nosso browser e visualizar o HTML,
CSS e o JavaScript.
11
Server-side
• O oposto do client-side. Aqui as informações são processadas por um servidor
web que interpretara e retornará o resultado que será exibido no browser. Sendo
assim não é possível visualizar o código de uma aplicação rodando no Server-side.
12
Servidor Web
• Servidor web é um software responsável por aceitar pedidos em HTTP de
clientes, geralmente os navegadores, e servi-los com respostas em HTTP,
incluindo opcionalmente dados, que geralmente são páginas web, tais como
documentos em HTML com objetos embutidos (imagens, etc.) ou um
computador que executa um programa que provê a funcionalidade descrita
anteriormente.
• Os sites e as aplicações web são implantados em computadores denominados
Web Servers.
• O mais popular, e mais utilizado no mundo, é o servidor Apache (software livre).
A Microsoft possui a sua própria solução denominada IIS (Internet Information
Services).
13
Aplicação web
• Em computação, aplicação web designa, de forma geral, sistemas de informática
projetados para utilização através de um navegador, através da internet ou
aplicativos desenvolvidos utilizando tecnologias web HTML, JavaScript e CSS.
Pode ser executado a partir de um servidor HTTP (Web Host) ou localmente, no
dispositivo do usuário.
• Uma aplicação web também é definida em tudo que se é processado em algum
servidor, exemplo: quando você entra em um e-commerce a página que você
acessa antes de vir até seu navegador é processada em um computador ligado a
internet que retorna o processamento das regras de negócio nele contido. Por
isso se chama aplicação e não simplesmente site web.
14
Desenvolvimento Web
• Desenvolvimento web é o termo utilizado para descrever o desenvolvimento de
sites, na Internet ou numa intranet. Este é o profissional que trabalha
desenvolvendo websites, podendo ser um Web Designer (Desenvolvedor do
Layout), ou Web Developer(Desenvolvedor de sistemas).
• O desenvolvimento refere-se a um processo de construção e testes do software
especifico para a web, com a finalidade de se obter um conjunto de programas,
que satisfazem as funções pretendidas, quer em termos de usabilidade dos
usuários ou compatibilidade com outros programas existentes.
• O desenvolvimento web pode variar desde simples páginas estáticas a aplicações
ricas, comércios eletrônicos ou redes sociais.
15
Codificação no cliente (Front-end)
• A separação de sistemas de software em front-end e back end simplifica o
desenvolvimento e separa a manutenção.
• Uma regra de ouro é que o lado front (ou "cliente") é qualquer componente
manipulado pelo usuário.
• Desenvolvedor front-end: é o responsável que projeta as interfaces de um
website. São eles que trabalham com o HTML, JavaScrip e o CSS para construir as
páginas web.
• O desenvolvedor front-end é responsável por “dar vida” à interface. Trabalha com
a parte da aplicação que interage diretamente com o usuário. Por isso, é
importante que esse desenvolvedor também se preocupe com a experiência do
usuário.
• Na parte de estudo, este profissional foca em HTML (linguagem de marcação),
CSS (linguagem de estilo) e JavaScript (linguagem de script/programação). 16
Codificação no servidor ( Back-end )
• O código do lado servidor (ou "back-end") reside no servidor.
• Desenvolvedor back-end: é o responsável por dinamizar o site através das
linguagens de programação.
• Desenvolvedores que preferem se especializar apenas em back-end, geralmente,
não são muito bons em deixar páginas bonitas e com boa usabilidade, mas são
melhores em regras de negócio, banco de dados e todas as coisas que rodam no
servidor.
• É o back-end que fornece e garante todas as regras de negócio, acesso a banco de
dados, segurança e escalabilidade.
• Esses desenvolvedores trabalham com linguagens de programação como, por
exemplo, Java, C#, PHP, Python, Ruby ou até mesmo JavaScript (sim, tem jeito de
rodar JavaScript no servidor também).
17
18
Conceitos básicos
de HTML5
O que é HTML?
• O HTML é uma das linguagens que utilizamos para desenvolver websites. O
acrônimo HTML vem do inglês e significa Hypertext Markup Language ou em
português Linguagem de Marcação de Hipertexto.
• O HTML é a linguagem base da internet. Foi criada para ser de fácil entendimento
por seres humanos e também por máquinas, como por exemplo o Google ou
outros sistemas que percorrem a internet capturando informação.
• Atualmente a HTML encontra-se na versão 5 e é padronizada pelo W3C (World
Wide Web Consortium), uma organização internacional responsável por
estabelecer padrões para a internet, como a linguagem XML, as CSS e o SOAP.
20
O que é HTML segundo W3C
• HTML significa Hyper Text Markup Language.
• HTML descreve a estrutura das páginas da Web usando marcação.
• Os elementos HTML são os blocos de construção de páginas HTML.
• Os elementos HTML são representados por tags.
• As tags HTML peças de conteúdo, como "título", "parágrafo", "mesa", e assim por
diante
• Browsers não exibem as tags HTML, mas usa para processar o conteúdo da
página.
21
Quem criou o HTML?
• Tim Berners-Lee. Esse é o nome do homem que criou o HTML. Ele criou o HTML
para a comunicação e disseminação de pesquisas entre ele e seu grupo de
colegas. O HTML ficou bastante conhecido quando começou a ser utilizada para
formar a rede pública daquela época, o que se tornaria mais tarde a internet que
conhecemos hoje.
22
Marcas ou marcadores (tags)
• Todo documento HTML possui marcadores (do inglês: tags), palavras entre
parênteses angulares (chevron) (< e >).
• Os marcadores são os comandos de formatação da linguagem.
• Um elemento é formado por um nome de marcador (tag), atributos, valores e
filhos (que podem ser outros elementos ou texto).
• Os atributos modificam os resultados padrões dos elementos e os valores
caracterizam essa mudança.
23
Estrutura Básica HTML
• doctype – tipo do documento
• <html> – tag principal, ela marca o início e o final
do documento.
• <head> – tag usada para delimitar o cabeçalho do
documento. Dentro dela outras tags de cabeçalho
serão usadas, como o title, meta, link, entre
outros.
• <title> – tag usada para indicar o título do
documento.
• <body> – tag usada para definir o corpo do
documento. Dentro dela serão colocadas as tags
que irão compor a nossa página
24
25
26
27
HTML Títulos
• Cabeçalhos HTML são definidas com a <h1> de <h6> tags.
• <h1> define o título mais importante. <h6> define o título menos importante:
• Exemplo
• <h1>This is heading 1</h1>
• <h2>This is heading 2</h2>
• <h3>This is heading 3</h3>
28
HTML parágrafos
• Parágrafos HTML são definidas com a <p> tag:
• Exemplo:
• <p>This is a paragraph.</p>
• <p>This is another paragraph.</p>
29
Links em HTML
• Links HTML são definidas com a <a>tag:
• Exemplo:
• <a href="https://www.w3schools.com">This is a link</a>
30
Imagens de HTML
• Imagens HTML são definidas com a <img> tag.
• O arquivo de origem ( src), texto alternativo ( alt), width e height são fornecidos
como atributos:
• Exemplo:
• <img src="w3schools.jpg" alt="W3Schools.com" width="104" height="142">
31
Botões HTML
• Botões HTML são definidas com a <button>tag:
• Exemplo:
• <button>Click me</button>
32
Listas de HTML
• Listas HTML são definidas com a <ul>(lista não ordenada / bala) ou o
<ol>(ordenado / lista numerada) tag, seguido por <li> tags (os itens da lista).
• Exemplo:
• <ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
• </ul>
33
HTML Styles
• O HTML styleatributo tem a seguinte sintaxe :
• <tagname style="property:value;">
• O background-color propriedade define a cor de fundo para um elemento HTML.
• <body style="background-color:powderblue;">
• O color propriedade define a cor do texto para um elemento HTML:
• <h1 style="color:blue;">This is a heading</h1>
• A font-family propriedade define a fonte a ser usado para um elemento HTML:
• <h1 style="font-family:verdana;">This is a heading</h1>
• A font-size propriedade define o tamanho do texto para um elemento HTML:
• <h1 style="font-size:300%;">This is a heading</h1>
• A text-align propriedade define o alinhamento do texto horizontal para um elemento HTML.
• <h1 style="text-align:center;">Centered Heading</h1>
34
Elementos formatação HTML
• <b> - Texto em negrito
• <strong> - texto Importante
• <i> - O texto em itálico
• <em> - texto enfatizado
• <mark> - texto marcado
• <small> - texto pequeno
• <del> - O texto excluído
• <ins> - Texto inserido
• <sub> - Texto Subscrito
• <sup> - texto sobrescrito
35
HTML tags de comentário
• <!-- This is a comment -->
• <p>This is a paragraph.</p>
36
Valores de cor
• Em HTML, as cores também pode ser especificado usando valores RGB, valores HEX, valores HSL,
valores RGBA e valores HSLA:
• Em HTML, uma cor pode ser especificado como um valor RGB, usando a seguinte fórmula: RGB (
vermelho, verde , azul )
• Cada parâmetro (vermelho, verde e azul) define a intensidade da cor entre 0 e 255.
• Por exemplo, RGB (255, 0, 0) é apresentado como vermelho, vermelho porque é definido para o
valor mais alto (255) e os outros são definidos como 0.
• Para exibir a cor preta, todos os parâmetros de cor deve ser definida como 0, assim: rgb (0, 0, 0).
• Para exibir a cor branca, todos os parâmetros de cor deve ser definida para 255, assim: rgb (255,
255, 255).
• <h1 style="background-color:#ff6347;">...</h1>
37
Valores de cor
38
HTML Tabelas
• Uma tabela HTML é definido com a <table> tag.
• Cada linha da tabela é definida com a <tr> tag.
• Um cabeçalho da tabela é definida com a <th>.
• Por padrão, títulos de tabela estão em negrito e centralizados
• Um dados / célula da tabela é definida com a <td> etiqueta.
39
O elemento <form>
• O HTML <form> elemento define uma forma que é utilizado para a recolha de
entrada de usuário.
• O action atributo define a ação a ser executada quando o formulário é enviado.
• O method atributo especifica o método HTTP ( GET ou POST ) para ser utilizado
aquando da apresentação de dados do formulário.
40
O elemento <input>
• O <input> elemento é o mais importante elemento de formulário.
• O <input> elemento pode ser apresentado de várias maneiras, dependendo do
tipo de atributo.
• Aqui estão alguns exemplos:
• <Input type = "text"> Define um campo de entrada de texto de uma linha
• <Input type = "radio"> Define um botão de rádio (para a seleção de uma das
muitas escolhas)
• <Input type = "submit"> Define um botão de envio (para enviar o formulário)
41
Exemplo <form>
42
43
Tipos que podem ser utilizados com a tag
<input>
• button: Insere um botão
• checkbox: Insere um checkbox; para vários itens, basta inserirmos vários “inputs” deste tipo
• file: Insere botão seleção de arquivo através de uma caixa de diálogo
• hidden: Campo pertencente ao formulário, mas que não será exibido na página
• image: Insere uma imagem como um botão submit
• password: Insere um campo password (caracteres digitados não aparecem)
• radio: Insere um radiobox (análogo ao checkbox)
• reset: Restaura os valores iniciais do formulário
• submit: Encaminha os dados inseridos para algum arquivo
• text: Insere um campo de edição de texto
44
Input Type
45
Web Design Responsive
• Web Design Responsive é sobre o uso de HTML e CSS para redimensionar
automaticamente, ocultar, reduzir ou ampliar, um site, para torná-lo ficar bem em
todos os dispositivos (computadores, tablets e telefones).
• Exemplo:
• <meta name="viewport" content="width=device-width, initial-scale=1.0">
46
Exercício: Criar em HTML um formulário
47
VSCode IDE
• O Visual Studio Code é um editor de código-fonte desenvolvido pela Microsoft
para Windows, Linux e macOS.
• Ele inclui suporte para depuração, controle Git incorporado, realce de sintaxe,
complementação inteligente de código, snippets e refatoração de código.
• Extensão:
• Emmet - https://docs.emmet.io/cheat-sheet/
• Tema: Omni
• Live Server: Alt+l+O
• Identação de Código: Shift+Alt+F
48
Conceitos básicos
de CSS
Introdução a CSS
CSS é a sigla em inglês para Cascade Style Sheet (Folha de Estilo em
Cascata)
É um mecanismo simples para adcionar estilos (fontes, cores, espaçamentos, bordas, etc) aos
documentos web
CSS é um Web Standard
conjunto de normas, diretrizes, recomendações produzidos pelo W3C e destinados a orientar
desenvolvedores para o uso de práticas que possibilitem a criação de uma Web acessível para
todos (independente de dispositivo ou necessidades especiais.
Porque usar CSS?
Regra de estilo
Declaração
Seletor: é o alvo da regra de estilo. É a parte da marcação capaz de definir em qual parte
será aplicado o estilo.
Propriedade: define o que será estilizado.
Valor: define o quanto ou como será estilizado.
A regra CSS e sua sintaxe
Observações
A declaração deve ser colocada entre sinais de chaves ( { } )
Um sinal de dois pontos ( : ) separa a declaração do seu valor
Quando houver mais de uma declaração em uma regra, a separação é feita por meio de ponto
é vírgula ( ; ). Entretanto, é uma boa técnica utilizar sempre o ( ; ) após cada regra, mesmo
tendo apenas uma.
body{
background-color: blue;
}
A regra CSS e sua sintaxe
body{
background-color: blue;
}
No exemplo
o seletor é o documento todo (body)
a propriedade é a cor do fundo
e o valor é a cor azul
A regra CSS e sua sintaxe
body{
background-color: blue;
font-familly: “Arial Narrow”;
}
<!DOCTYPE...>
<html xmlns=...>
<head> ... </head>
<body>
<p style="color:white; background-color: green; text-align: center;
font-family:Arial Narrow; font-size:15pt; font-weight:bold;">
Este parágrafo tem cor branca, fundo verde, está centralizado, <br>
fonte Arial Narrow , tem tamanho 15 e está em negrito.
</p>
</body>
...
Estilos INCORPORADOS
<!DOCTYPE...>
<html xmlns=...>
<head>
<title> Exemplo de CSS </title> ...
<style> <body>
p{ <p>
color: white; Este parágrafo tem cor branca,
background-color: green; fundo verde, está centralizado,
text-align: center; fonte Arial Narrow , tem tamanho
font-family: “Arial Narrow”; 15 e está em negrito.
font-size: 15pt; </p>
font-weight: bold;
} </body>
</style> </html>
</head>
...
Estilos INCORPORADOS
Estilos Externos
Nesse método, a declaração é definida em um arquivo externo com
extensão .css contendo as regras de estilo e pode ser aplicada a vários
documentos (várias páginas)
Existem 2 tipos
Folhas de estilo “linkadas” – é criado um link para o arquivo externo no elemento <head>,
com o uso do elemento link
...
<head>
<link rel=“stylesheet” type=“text/css” href=“estilo.css” media=“all”>
</head>
...
Estilos Externos
Estilos Externos
Folhas de estilo “importadas” – usa-se a diretiva @import dentro do elemento <style>
...
<head>
<style type=“text/css”>
@import url(“estilo.css”) all;
</style>
</head>
...
Seletor Universal
Aplicado a todos os elementos do documento.
O exemplo abaixo indica que todos os elementos textuais terão a cor azul
* { color: blue; }
Seletor de Tipo
O estilo é aplicado diretamente a um determinado elemento de marcação
No exemplo abaixo, a folha de estilo criada (meuestilo.css) indica que
todos os parágrafos estarão em itálico com cor verde, os cabeçalhos h3 e
h4 serão da fonte Arial e os itens de uma lista terão tamanho 12px.
É possível definir a mesma regra para vários elementos, separando-os por vírgulas
Seletor de Tipo
É possível ainda, ter várias regras para o mesmo elemento
h3, h4 {
font-family: Arial;
}
h3{
color: blue;
}
h4{
color: yellow;
}
Seletor de Tipo
Propriedades
color: define a cor de primeiro plano de um elemento. Já vimos o que essa
propriedade faz em exemplos anteriores
background-color: define a cor de fundo de um elemento
Propriedades (Background)
background-image: usada para definir uma imagem de fundo para a página
Propriedades (Background)
background-repeat: usada para definir a frequencia de repetição da
imagem de fundo.
Por padrão, o valor é repeat (repetir na direção x e y)
Propriedades (Background)
background-position: permite alterar a posição padrão de uma imagem de
fundo
Por padrão, o valor é canto superior esquerdo
Propriedades (Background)
background-attachment: permite fixar o plano de fundo. Quando rolar pela
página, permanecerá fixo.
background-attachment: fixed;
background-attachment: scroll;
Propriedades (Fontes)
font-family: prioridade para apresentação de um elemento em uma página. Se a primeira
fonte da lista não estiver disponível na máquina do usuário, deverá ser usada a segunda e
assim por diante:
font-sytle: pode assumir os valores normal, italic ou oblique.
font-weight: normal, bolder, bold, lighter,...
Unidades de Medidas
Quando valores são definidos para as propriedades
CSS, são utilizadas algumas medidas;
Dividem-se em 2 grupos:
Unidades absolutas:
in – polegada
cm – centímetro
mm – milímetro
pt – ponto
pc – pica. 1 pc = 12 pt
Unidades relativas:
font-size: 30px;
%
font-size: 12pt;
em – 1 em é igual ao tamanho da fonte definido
ex – 1 ex equivale à altura da letra “x” minúscula
font-size: 120%;
px – define o tamanho de um pixel no monitor font-size: 1em;
Propriedades (Fontes)
o elemento <img> terá seu alinhamento alterado caso seja definido uma propriedade
text-align para um elemento de bloco onde o <img> esteja aninhado, pois ele é um
elemento de linha!
Um pouco sobre cores
Sistema de Cores
RGB
O vermelho (R - red), o verde (G – green) e o azul (B – blue) são combinados para formar
outras cores.
Um pouco sobre cores
CSS permite especificar cores de diferentes modos
As cores podem ser definidas usando seu nome
Mas só há apenas algumas cores que são definidas pelo nome: aqua, black, blue, fuchsia, gray, green, lime,
maroon, navy, olive, orange, purple, red, silver, teal, white, yellow
Códigos hexadecimais: cada conjunto de dois dígitos representa o vermelho, o verde e o azul
Hexadecimal: #cc6600
É o mais utilizado. Sempre inicie com o #. Em hexadecimal, os valores permitidos vão de 0 a F (0 a 9, A a F)
Um pouco sobre cores
h3 {
color: aqua;
}
Ou ainda...
h3{
color: rgb(0, 255, 255);
}
Ou ainda...
h3{
color: #00FFFF;
}
Tabela de Cores RGB
Neste endereço pode ser encontrada uma tabela com diversos códigos de
cores RGB
Entretanto, são possíveis 16 milhões de combinações
Tipos de Seletores
Como fazer para aplicar diferentes estilos a elementos de um mesmo tipo?
Se quiser que os dois parágrafos abaixo possuam estilos diferentes?
p{ p{
border: 1px solid blue; border: 3px dashed purple;
color: red; color: gray;
} }
Seletor de Classe
Utiliza o atributo “class” diferencia elementos (não deve ser iniciada com
números)
p.tipo1{ p.tipo2{
border: 1px solid blue; border: 3px dashed purple;
color: red; color: gray;
} }
.estilo1{
background-color: yellow;
margin: 50px;
border: 1px dashed blue;
color: #339966;
}
Seletor de Classe
Seletor de ID
Funciona como o seletor de classe, mas seleciona elementos que o id case
com o especificado na regra.
#meucabecalho{ h1#meucabecalho{
border: 1px solid blue; border: 1px solid blue;
color: red; color: red;
} }
Seletores de ID
IDs em HTML devem ser únicos na página. Não se deve ter dois elementos
com o mesmo valor de atributo de id!
ERRADO:
CERTO:
input[type=“text”]{
background-color: blue;
color: white;
}
Links
Aplicar propriedades aos links de acordo com o seu estado (visitado, não
visitado, ativo)
Normalmente (dependendo do navegador)
Links não visitados são da cor azul
Links visitados são da cor roxa
VER EXEMPLO
Utilização de pseudo-classes
Adcionar “efeitos especiais” a alguns seletores
Utilização de “:”
Links
Elemento a. Pseudo-classe: link
a:link{
color: green;
}
Links
Elemento a. Pseudo-classe: hover
a:hover{
color: gray;
}
Links
Elemento a. Pseudo-classe: visited
a:visited{
color: yellow;
}
Links
Dica: removendo o sublinhado de links
a{
text-decoration: none;
}
ul{ ul{
list-style-type: circle; list-style-type: square;
} }
Listas Desordenadas
list-style-type
Valor Descrição
none Sem marcador
disc Default. O marcador é um círculo preenchido
circle O marcador é um círculo
square O marcador é um quadrado
Listas Ordenadas
list-style-type
Valor Descrição
none Sem marcador
circle Círculo
disc Default. Círculo preenchido
square Quadrado
armenian Número Armenian
decimal Número
decimal-leading-zero Número com zeros iniciais (01, 02, 03, etc.)
georgian Numeração georgiano tradicional (an, ban, gan, etc.)
lower-alpha Letra minúscula (a, b, c, d, e, etc.)
lower-greek Grego minúsculo (alpha, beta, gamma, etc.)
lower-latin Latin minúsculo (a, b, c, d, e, etc.)
lower-roman Romano minúsculo (i, ii, iii, iv, v, etc.)
upper-alpha Letra maiúscula (A, B, C, D, E, etc.)
upper-latin Latino Maiúsculo (A, B, C, D, E, etc.)
upper-roman Romano Maiúscula(I, II, III, IV, V, etc.) A
alba.
Listas
O Modelo de Caixa (Box Model)
<p>
“HERCULE POIROT PAROU no patamar por um instante
com a cabeça um pouco inclinada, como se esperasse ouvir
alguma coisa. Nenhum ruído vinha do andar de baixo.
Aproximou-se da janela e viu Mary Restarick embaixo novamente
entretida com a jardinagem”
</p>
<h4>
Trecho retirado do livro “A Terceira Moça” de Agatha Christie
</h4>
O Modelo de Caixa
TOP
border
margin
padding
padding
padding
margin margin RIGHT
LEFT
padding
margin
BOTTOM
Definindo as Margens de um Elemento
body{
margin-top: 100px;
margin-left: 70px;
margin-right: 40px;
margin-right: 10px;
}
Ou ainda...
body{
margin: 100px 40px 10px 70px;
}
Definindo o Padding de um elemento
Pode ser entendido como “enchimento” de um elemento.
h4{
background: yellow;
padding: 20px 20px 20px 80px;
}
Antes:
Depois
Bordas
As bordas podem ser usadas para infinitas coisas
Elemento decorativo ou servir de separação entre dois elementos
CSS proporciona infinitas possibilidades de utilização de bordas
Espessura [border-width]
Pode assumir valores: thin, medium, thick (fina, média e grossa)
Ou um valor numérico
Bordas
Cores [border-color]
h4{
background: yellow;
color: #8b0000;
padding: 20px 20px 20px 80px;
border-width: thick;
border-color: #8b0000;
border-style: double;
}
Bordas
É possível ainda definir propriedades diferentes para cada uma das bordas
(left, right, top, bottom)
h4{
(...)
border-top-width: thick;
border-top-style: solid;
border-top-color: red;
border-bottom-width: thick;
border-bottom-style: dashed;
border-bottom-color: blue;
}
“Compilando” valores...
É possível fazer as declarações para o mesmo elemento utilizando uma
linha só:
Isto não serve apenas para bordas
h4{
}
LAYOUT DE SITES
Elementos responsáveis pela estruturação de páginas HTML
div e span
Agrupar e prover estrutura aos documentos
div e span não faz nenhuma modificação aparente no código. Não tem uma
“função” específica quanto elemento. Apenas agrupa outros elementos
dentro dele (não tem valor semântico)
Ver exemplo
PROPRIEDADES: FLOAT
Desativando o float
Se for preciso que um elemento flutue pela página mas que nenhum outro elemento fique ao
seu redor, pode-se utilizar propriedade clear
.imagemFlutuante {
clear: both;
}
PROPRIEDADES: FLOAT
p.pos_fixed {
position: fixed;
top: 30px;
right: 5px;
}
h2.pos_esq {
position: relative;
left: -20px;
}
h2.pos_esq {
position: relative;
left: -20px;
}
HTML E A TAGDIV
Utilização da tag
<div> ... </div>
Cria uma divisão ou uma seção em um documento
Geralmente usado para formatar um grupo de elementos com estilos
HTM L
</div> </div>
#principal{ .superior{
width
margin
padding
background
border
float
position
...
LAYOUT
Passos para criação de layouts:
Identificar como você deseja dispor os elementos da sua página
Agrupar os elementos utilizando <div>
Criar CSS para a div especificada
LAYOUT
Passos para criação de layouts:
Identificar como você deseja dispor os elementos da sua página
Agrupar os elementos utilizando <div>
Criar CSS para a div especificada
... ...
</div> </div>
<div id=“m<enduiv”>id=“conteudo”>
132
Bootstrap
• Bootstrap é um framework web com código-fonte aberto para desenvolvimento
de componentes de interface e frontend para sites e aplicações web usando
HTML, CSS e JavaScript, baseado em modelos de design para a tipografia,
melhorando a experiência do usuário em um site amigável e responsivo.
• https://www.w3schools.com/bootstrap5/bootstrap_get_started.php
• https://getbootstrap.com.br/
• https://bootsnipp.com/
133
O Bootstrap é importante?
• Mais do que outros framework front-end, o Bootstrap tem se tornado ao longo
dos anos uma das ferramentas mais importantes para a criação de websites. Isto
porque seus padrões seguem os princípios de usabilidade e as tendências de
design para interfaces.
• Além disso, sua padronização permite que os sites tenham um melhor aspecto,
sendo uma forma de criar páginas esteticamente agradáveis. E você sabe que
quanto melhor o design de uma página, maior a taxa de satisfação dos usuários.
134
Características e Vantagens do Bootstrap
• Biblioteca de componentes
• Reuso de código
• Documentação e comunidade
• Padrão visual
• Responsividade
• Biblioteca de componentes
• Talvez uma das características mais interessantes deste framework é o fato dele
possuir uma extensa biblioteca de componentes, como ícones, caixas de texto,
painéis e cores em links.
135
Reuso de código
• Assim como é objetivo de todo framework, o Bootstrap permite que menos
código possa ser escrito, já que ele entrega uma série de formatações visuais
prontas.
• A única necessidade do desenvolvedor é saber qual a classe ele deve chamar.
136
Responsividade
• Além de padronizar uma série de parâmetros, o Bootstrap é uma das formas mais
fáceis de deixar um site responsivo. Se você não sabe o que significa o termo, ele
quer dizer que um site é adaptável a diferentes tipos de tela, como celular, tablet
ou computador.
• Hoje, indica-se que todos os sites devem ser responsivos para melhorar a
experiência do usuário e trazer benefícios para rankeamento do Google. Com o
Bootstrap, isso é algo extremamente facilitado. Com apenas uma linha de código
é possível deixar todo o projeto responsivo e melhorar a exibição do conteúdo de
acordo com tags específicas.
137
Template inicial
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="utf-8">
<title>Olá, mundo!</title>
</head>
<body>
<h1>Olá, mundo!</h1>
</body>
</html>
138
HTML5 doctype
• Bootstrap exige o uso do doctype HTML5. Sem isso, você verá alguns estilos
incompletos e esquisitos.
<!DOCTYPE html>
<html lang="pt-br">
...
</html>
139
Meta tag responsiva
• Bootstrap tem uma abordagem mobile first, uma estratégia que optimizamos o
código para dispositivos móveis primeiro e, então, é que começamos a pensar em
media queries para aparelhos maiores. Por isso, para garantir renderização
adequada e touch zooming em todos eletrônicos, use a tag responsiva viewport
no <head>.
140
Tables
• <table class="classe">
• .table
• .table-striped
• .table-bordered
• .table-hover
• .table-condensed
141
Images
• <img src="imagem" class="classe" alt="" width="height="">
• .img-rounded
• .img-circle
• .img-responsive
142
Jumbotron Inside Container
<div class="container">
<div class="jumbotron">
<h1>Bootstrap Tutorial</h1>
<p>Bootstrap is the most popular HTML, CSS, and JS framework for developing
responsive, mobile-first projects on the web.</p>
</div>
<p>This is some text.</p>
<p>This is another text.</p>
</div>
143
Wells
• Basic Well
• Example
<div class="well">Basic Well</div>
.well-lg
.well-sm
144
Alerts
<div class="alert alert-success">
<strong>Success!</strong> Indicates a successful or positive action.
</div>
<div class="alert alert-info">
<strong>Info!</strong> Indicates a neutral informative change or action.
</div>
<div class="alert alert-warning">
<strong>Warning!</strong> Indicates a warning that might need attention.
</div>
<div class="alert alert-danger">
<strong>Danger!</strong> Indicates a dangerous or potentially negative action.
</div>
145
Buttons
<button type="button" class="btn">Basic</button>
<button type="button" class="btn btn-default">Default</button>
<button type="button" class="btn btn-primary">Primary</button>
<button type="button" class="btn btn-success">Success</button>
<button type="button" class="btn btn-info">Info</button>
<button type="button" class="btn btn-warning">Warning</button>
<button type="button" class="btn btn-danger">Danger</button>
<button type="button" class="btn btn-link">Link</button>
146
NavBar
<nav class="navbar navbar-inverse">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="#">WebSiteName</a>
</div>
<ul class="nav navbar-nav">
<li class="active"><a href="#">Home</a></li>
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">Page 1
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Page 1-1</a></li>
<li><a href="#">Page 1-2</a></li>
<li><a href="#">Page 1-3</a></li>
</ul>
</li>
<li><a href="#">Page 2</a></li>
<li><a href="#">Page 3</a></li>
</ul>
</div>
</nav>
147
Forms
• Wrap labels and form controls in <div class="form-group"> (needed for optimum
spacing)
• Add class .form-control to all textual <input>, <textarea>, and <select> elements
<form action="/action_page.php">
<div class="form-group">
<label for="email">Email address:</label>
<input type="email" class="form-control" id="email">
</div>
<div class="form-group">
<label for="pwd">Password:</label>
<input type="password" class="form-control" id="pwd">
</div>
<div class="checkbox">
<label><input type="checkbox"> Remember me</label>
</div>
<button type="submit" class="btn btn-default">Submit</button>
</form>
148
Modal
<!-- Modal -->
<div class="modal fade" id="myModal" role="dialog">
<div class="modal-dialog modal-sm">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Modal Header</h4>
</div>
<div class="modal-body">
<p>This is a small modal.</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
149