Use A Cabeça! HTML e CSS
Use A Cabeça! HTML e CSS
A Linguagem da Web
Não tão rápido... Para me
conhecer melhor, você
precisa falar a linguagem
universal. Você sabe, o
HTML e as CSS.
A Web
O Vídeo matou um artista
Você quer ter uma idéia fantástica? Vender alguma coisa? Precisa de uma
loja criativa? Ligue-se na Web — não precisamos dizer que ela se tornou
a forma universal de comunicação. E melhor ainda, uma forma de
comunicação da qual VOCÊ pode participar.
Entretanto, se você realmente deseja usar a Web com eficiência, tem
que saber algumas coisas sobre o seu funcionamento e sobre HTML.
Vamos dar uma olhada bem de cima a partir de 10 mil metros:
2 Capítulo 1
l
re
My Playlist
”.
</title>
<head>
<body>
<html>
<h1>Kick’n Tunes
<head>
</h1>
P“
<title>
My Playlist <p>BT - Satellite: nice
</title>
downbeat tune.
<head>
<body> </p>
<h1>Kick’n Tunes <p>
</h1>
...
<p>BT - Satellite: nice
downbeat tune.
</p>
<p>
...
<html>
<head>
<title>
My Playlist
</title>
<head>
<body>
<h1>Kick’n Tunes
</h1> <html>
<p>BT - Satellite: nice <head>
downbeat tune. <title>
</p> My Playlist
<p> </title>
... <head>
<body>
<h1>Kick’n Tunes
</h1>
<p>BT - Satellite: nice
downbeat tune.
</p>
Cada servidor
<p>
...
armazena
arquivos HTML,
figuras, sons e ... se o servidor puder
outros tipos de
Servidor web
localizar o recurso, o envia.
arquivos.
...e exibe a
r vid or serveas O navegador página HTML.
e
O s as web e dor. recebe a página...
págin ao navega
<html>
<head>
<title>
envia
Head First Lounge </
title>
<head>
<body>
<h1>Welcome to Head
</h1>
<img src="[Link]
<p>Join us any even
</p>
<html>
<head>
<p>
<title>
My Playlist
...
</title>
<html> <head>
<head>
<title> <body>
My Playlist
<h1>Kick’n Tunes
</title>
<head>
</h1>
<body>
<h1>Kick’n Tunes ...
</h1>
</p>
<p>
...
<html>
<head>
<title>
My Playlist
</title>
<head>
<body>
<h1>Kick’n Tunes
</h1>
...
Servidor web
Mas como o navegador sabe como exibir a página? É aqui que entra o HTML.
O HTML diz ao navegador tudo sobre o conteúdo e sobre a estrutura da
página. Vamos ver como isso funciona.
<head>
</head>
<body>
</p>
<h2>Directions</h2> F
<p>
</p>
</body>
</html>
4 Capítulo 1
C
E
D
R: Correto, e boa observação. Os “.html” ao final do nome do arquivo para R: Sim, se você colocar seus co-
dar ao sistema operacional uma ideia mentários entre <!-- e -->, o navegador
navegadores ignoram tabulações, melhor do que é o arquivo. Mas, como você vai ignorá-los totalmente. Digamos
retornos de carro e a maioria dos espaços já viu, o que realmente interessa é o que que você queira escrever o comen-
nos documentos HTML. Ao invés disso, colocamos dentro do arquivo. tário “Aqui é o início do conteúdo
eles confiam em sua marcação para do Lounge”, o faria desta maneira:
determinarem onde ocorrem as quebras P: Todos estão falando em <!-- Here's the beginning
de linha e de parágrafo. HTML5. Vamos utilizá-lo? Se of the lounge content -->
sim, por que não estamos dizendo Observe que você pode colocar os
Então por que inserimos nossa própria “HTML-CINCO” em vez de “HTML”? comentários em múltiplas linhas. Lembre-
formatação se o navegador vai
-se sempre de que tudo que for colocado
ignorá-la? Para nos ajudar a ler com
entre “<!--” e “-->”, mesmo que seja código
HTML, será ignorado pelo navegador.
6 Capítulo 1
do sobre
a versão Observe o HTML do “Head First Lounge” novamente. Dê
L5 ganhou uma olhada nas tags e veja se você consegue imaginar o
ente e é que elas dizem ao navegador sobre o conteúdo. Escreva
as das formas suas respostas no espaço à direita; já fizemos o primeiro
possibilita comentário para você.
dades, que
Ele também
tas avançadas
t application <html> Informa ao navegador que este é o início do HTML.
APIs), que
<head> Inicia a página head (veja mais informações adiante)
abeça!
<title>Head First Lounge</title>
</head>
ce bobagem.
ê-vê-é-o- <body>
o desde
<h1>Welcome to the Head First Lounge</h1>
or que a
um formato <img src=”[Link]”>
ou alguma <p>
</p>
ra de colocar
</body>
</html>
r seus co-
o navegador
Digamos
o comen-
onteúdo
maneira:
ginning
ent -->
e colocar os
inhas. Lembre-
e for colocado
que seja código
avegador.
você está aqui 7
8 Capítulo 1
O CEO Starbuzz
Decisões, decisões.
Marque a sua prioridade abaixo (escolha apenas uma):
abisca
O CEO rum
algo emnapo
guarda
Primeiro passo:
Navegue até a sua pasta Applications.
A aplicação TextEdit está na pasta
(Applicações). A melhor maneira de chegar
aqui é escolhendo “New Finder Window” do
menu File e então procurar pela aplicação
diretamente em seus atalhos. Quando
encontrá-lo, clique em Applications.
Segundo passo:
Localize e execute TextEdit.
Aqui está o TextEdit.
Você provavelmente possui várias aplicações
listadas em sua pasta Applications. Portanto,
faça uma rolagem para baixo até encontrar
o TextEdit. Para executá-lo, clique duas vezes Os atalhos
no ícone do TextEdit. do Finder.
Terceiro passo (opcional):
Mantenha o TextEdit em seu Dock
Se quiser tornar sua vida mais fácil, clique e
mantenha pressionado o botão do mouse
sobre o ícone do TextEdit no Dock (este
ícone aparece sempre que a aplicação
estiver em execução). Quando aparecer um
menu instantâneo, escolha “Keep in Dock”.
Dessa maneira, o ícone do TextEdit sempre
aparecerá em seu Dock e você não terá que
procurá-lo novamente na pasta Applications
sempre que precisar usá-lo.
12 Capítulo 1
Quarto passo:
Altere as preferências do TextEdit
Por padrão, o TextEdit fica em modo
“rich text”, o que significa que ele
adicionará sua própria formatação e Este menu de
caracteres especiais a seu arquivo formatação de texto
durante o salvamento — e isso não é o significa que você
que você quer. Portanto, você precisa está em modo rich
alterar as preferências no TextEdit text. Se ele estiver
para que ele salve seu trabalho como aqui, é preciso alterar
um arquivo de texto puro. Para fazer suas preferências.
isso, primeiro escolha o item de menu
“Preferences” no menu TextEdit.
Quinto passo:
Defina as preferências como
Plain text
Uma vez na caixa de diálogo
“Preferences”, há três coisas que
você deve fazer.
Primeiro, escolha “Plain text” como
o modo de edição padrão na guia
“New Document”.
Na guia “Open and Save”,
certifique-se de que “Ignore rich
text commands in HTML files”
esteja marcado.
Por último, certifique-se de que
“Add .txt extension to plain text files”
esteja desmarcado.
Isso é tudo; para fechar a caixa de
diálogo, clique no botão vermelho
no canto superior esquerdo.
Sexto passo:
Viu? O menu de
Saia e reinicie
formatação sumiu: isso
Agora saia do TextEdit escolhendo significa que estamos
“Quit” no menu TextEdit e então no modo texto.
reinicie a aplicação. Desta vez, você
verá uma janela sem os menus de
formatação de texto elegante no topo
da janela. Você agora está pronto para
criar um arquivo HTML.
Primeiro passo:
Abra o menu Start (Iniciar, na versão em português)
e navegue até o Bloco de Notas.
Você o encontrará em Accessories (Accessorios). A
maneira mais fácil de chegar lá é clicando no menu
“Start”, então em “All Programs” e finalmente em
“Accessories”. Você verá o Bloco de Notas listado ali.
14 Capítulo 1
Segundo passo:
Abra o Bloco de Notas.
Uma vez localizado o Bloco de Notas
na pasta Acessórios, vá em frente e
clique nele. Você verá uma janela
em branco pronta para que você
Se você estiveerr comece a digitar HTML.
usando qu alqu outra
W indo ws,
versão do ra rá o
també m en co nt
aq ui.
Bloco de Notas
Mas recomendado.
P: Por que estou usando um editor de texto R: A resposta simples: utilize qual deles preferir.
simples? Não há ferramentas poderosas como o O HTML e as CSS são padrões da indústria, o que
Dreamweaver e Expression Web para a criação de significa que todos os navegadores tentam suportar
páginas Web? HTML e CSS da mesma maneira (apenas certifique-se
de que esteja usando a última versão do navegador,
R: Você está lendo este livro porque deseja entender para obter o melhor suporte).
as verdadeiras tecnologias usadas nas páginas Web,
certo? Todas elas são grandes ferramentas, mas fazem A resposta complexa: na verdade, há algumas
quase todo o trabalho para você. Até que você seja o pequenas diferenças na maneira como os navegadores
mestre do HTML e CSS, vai querer aprender essas coisas lidam com suas páginas. Se você tem usuários que
sem que uma grande ferramenta fique em seu caminho. acessarão suas páginas por uma grande variedade de
navegadores, então sempre teste sua página Web em
Quando você for um mestre, entretanto, essas vários navegadores diferentes. Algumas páginas serão
ferramentas oferecerão alguns recursos muito bons, exibidas da mesma maneira, outras não. Quanto mais
como a verificação da sintaxe e visualização das avançado você se tornar em HTML e CSS, mais essas
páginas. Neste momento, quando você enxergar a pequenas diferenças importarão para você. Vamos
página de “código”, entenderá tudo o que está ali, e encontrar algumas dessas sutilezas neste livro.
descobrirá que as alterações no HTML e nas CSS puros
são quase sempre muito mais rápidas do que através Qualquer um dos principais navegadores – Internet
de interfaces como usuário. Você também descobrirá Explorer, Chrome, Firefox, Opera e Safari – funcionarão
que, uma vez que os padrões mudam, essas ferramentas para a maioria dos exemplos (exceto onde citado); eles
nem sempre são atualizadas com rapidez e podem não são todos navegadores modernos com grande suporte a
suportar a maioria dos padrões mais recentes, até sua HTML e CSS. E como desenvolvedor Web, você deverá
próxima versão. A partir do momento que você for capaz testar seu código em mais de um navegador, então nós
de alterar o HTML e as CSS sem a ferramenta, será o encorajamos a fazer o download e se familiarizar com
capaz de acompanhar todas as novidades o tempo todo. ao menos dois!
Existem muitos outros editores que incluem ótimas Se você está procurando um bom navegador,
ferramentas como clips (para inserir automaticamente experimente o Firefox da Mozilla; ele possui um suporte
trechos de HTML que você escreve com frequência), muito bom para HTML e CSS.
preview (para ter uma prévia diretamente no editor,
antes de testar no navegador), coloração de sintaxe P: Estou criando estes arquivos no meu próprio
(as tags são de cores diferentes do conteúdo) e muito computador – como os verei na Web?
mais. Uma vez que você compreender a escrita básica
de HMTL e CSS em um editor simples, pode ser válido R: Essa é uma das coisas boas do HTML: você pode
checar um desses editores mais incrementados, como criar arquivos e testá-los em seu próprio computador
Coda, TextMate, CoffeeCup ou Aptana Studio. Existem e então publicá-los na Web. No momento, vamos nos
muitas opções para serem escolhidas (grátis ou não). preocupar apenas com o modo de criar os arquivos
e com o que acontece dentro deles. Mais tarde
P: Eu já tenho o editor, mas qual navegador devo mostraremos como podemos colocá-los na Web.
usar? Há tantos: Internet Explorer, Chrome, Firefox,
Opera, Safari(...) o que devo fazer?
16 Capítulo 1
Digite as informações do
guardanapo desta maneira:
Windows
Mac
18 Capítulo 1
Mac
Mac
20 Capítulo 1
Ímãs de Geladeira
Bem, vamos adicionar a estrutura...
Cappuccino, $1.89
A spicy drink made with black tea, spices, milk and honey.
<h1>
</h1> </h2> <p> </p>
<h1> <h2>
</h1> </h2> <p> </p>
<h1> <h2> </h2>
</h1> <h2> <p> </p>
</h1>
Utilize as tags <h1>loes. Todo o
para marcar os títus é conteúdo
texto dentro dela
real do título.
22 Capítulo 1
Já chegamos?
Você tem um arquivo HTML com marcação. Isso o torna uma página Web?
Quase. Você já viu as tags <html>, <head>, <title> e <body>. Precisamos
adicioná-las para tornar essa uma página HTML de primeira classe...
<head>
O cabeçalho consiste das
<title>Starbuzz Coffee</title> tags <head> e </head>e de
</head> tudo o que está dentro delas.
<body>
Pode ter
frases. <h2>Chai Tea, $1.85</h2>
</body> Mantenha o
cabeçalho e o corpo
</html>
separados quando
O corpo contém o conteúdo e estrutura escrever seu HTML.
de sua página Web; as partes da página
Web que você vê em seu navegador.
Maneiro!
24 Capítulo 1
Dissecando tags
Ok, você já viu um pouco de marcação,
então vamos dar um zoom e ver como as
tags de fato trabalham.
e o título
Normalmente, você coloca tags em volttag a de
o no chamento
head> é algum conteúdo. Aqui, estamos usan do s Está é a tag de tífetulo; Neste
aqui. para dizer ao navegador que noss o conteú do que finaliza um você sabe
“Starbuzz Coffee Beverages”, é um títu lo de caso a tag </h1>. fechamento
primeiro nível (ou seja, um título nível um). que é uma tag dedepois do
porque ela vem uma / antes
conteúdo e tem gs de
de h1. Todas as ta um /.
Aqui está a tag de abertura fechamento possuem
que inicia o título.
Lembre-se,
Elemento = Tag de Abertura + Conteúdo + Tag
de Fechamento
P: Por que as tags de de escrever um HTML perfeito; R: Sim, as tags do HTML são
existem várias ferramentas que muitas vezes “aninhadas” dessa
fechamento possuem aquele “/” podem verificar seu código antes maneira. Se você pensar sobre o
adicional? que ele seja colocado em um assunto, é natural para uma página
servidor Web, onde todo mundo
R: O “/” na tag de fechamento possa vê-lo. Por ora, apenas
HTML ter um corpo, que contenha
um parágrafo e assim por diante.
existe para ajudar você e o habitue-se a sempre combinar Muitos elementos HTML possuem
navegador a saber onde o conteúdo as tags de abertura com as de outros elementos HTML entre suas
estruturado termina. Caso contrário, fechamento. tags. Daremos uma olhada nesse
as tags de fechamento seriam tipo de situação mais adiante , mas
iguaizinhas às tags de abertura. P: Bem, e quanto à tag <img por enquanto observe apenas como
src=“[Link]”> no exemplo do os elementos se relacionam uns
com os outros em uma página.
As tags podem ser um pouco mais interessantes do que você já viu até
aqui. Veja uma tag de parágrafo com algumas coisinhas adicionais. O que
você acha que ela faz?
26 Capítulo 1
Missão do
zz
Café Starbu
da a
Oferecer to
ue
cafeína de q
para
você precisa
r su vida
a
impulsiona
razer.
Beba com p
28 Capítulo 1
<h2>Cappuccino, $1.89</h2>
<p>A spicy drink made with black tea, spices, milk and honey.</p>
</body>
</html>
P: Um elemento pode ter um “atributo”? O que P: Porque eu tenho que especificar o tipo do
isso significa? estilo“text css” como atributo de style? Existem
outros tipos de estilos?
R: Os atributos são uma maneira de oferecer informações
adicionais sobre um elemento. Como no caso de você ter R: Houve um tempo em que os designers de HTML
um elemento “style” e o seu atributo permitir que você diga pensavam que haveria outros estilos, mas caímos na
exatamente de que tipo de estilo está falando. Você verá muitos real e você só pode usar <style> sem um atributo
atributos para elementos; lembre-se apenas de que eles lhes — todos os navegadores saberão que se trata de CSS.
oferecem adicionais sobre o elemento. Ficamos desapontados; estávamos segurando nosso
fôlego pelo <style type=“kitschanos50”>. Fazer o quê...
<html>
<head>
<title>Starbuzz Coffee</title>
<style type="text/css">
body {
background-color: #d2b48c;
margin-left: 20%;
margin-right: 20%;
border: 2px dotted black;
padding: 10px 10px 10px 10px; A CSS utiliza uma
sintaxe totalmente
diferente do HTML.
font-family: sans-serif;
}
</style>
</head>
<body>
<h1>Starbuzz Coffee Beverages</h1>
<h2>Cappuccino, $1.89</h2>
<p>A mixture of espresso, steamed milk and milk foam.</p>
30 Capítulo 1
Cor de fundo
agora é dourada.
Agora temos
margens em torno
do conteúdo.
Margem
Também, temos uma
borda cinza em
torno do conteúdo.
Há algum enchimento a
entre o conteúdos ose lados).
borda (em todo
Estamos usando
uma fonte
diferente para
obtermos uma
aparência limpa.
Se você estiver
usando IE, talvez não
visualize a borda. Nossa! Muito bom.
Estamos na Web agora!
O Internet Explorer não
mostra a borda em volta do
corpo corretamente. Tente
e ou
carregar a página no Firefox, Chrom
Safari para vê-la.
Mesmo dando apenas uma pequena olhada nas CSS, você já começou a ver
o que elas podem fazer. Combine cada linha de definição de estilo com a sua
respectiva função.
background-color: #d2b48c;
Define a fonte a ser usada no texto.
margin-left: 20%;
Define uma borda preta pontilhada ao
redor do corpo.
margin-right: 20%;
Define a borda pontilhada e cinza em
torno do corpo.
font-family: sans-serif;
Cria um pouco de enchimento em torno do
corpo da página.
P: A CSS parece uma linguagem verdade é mais fácil do que utilizar uma P: Por que há um “body” no
totalmente diferente do HTML. Por linguagem para ambas as funções. início das regras das CSS? O que
que ter duas linguagens? É só para isso significa?
eu ter que aprender mais coisas, né? P: #d2b48c não parece ser uma
cor. Como #d2b48c pode R: O “body” nas CSS significa que
R: Você está certo. HTML e CSS ser “dourado”? todo o código CSS entre o “{” e “}” se
são linguagens completamente aplica ao conteúdo dentro do elemento
diferentes, mas isso acontece porque R: Há algumas maneiras diferentes <body> do HTML. Portanto, quando você
eles têm funções totalmente diferentes. de se especificar as cores com as define a fonte como sans-serif, está
Assim como não usaria o português CSS. A mais popular é chamada de dizendo que a fonte padrão dentro do
para contabilizar seus gastos, ou a “código hexadecimal”, e #d2b48c é um corpo de sua página deve ser sans-serif.
matemática para escrever um poema, exemplo dela. Essa é realmente uma cor
você não utiliza as CSS para criar dourada. Por ora, aceite esse fato, e lhe Em breve detalharemos o modo de
estrutura ou o HTML para criar estilo mostraremos como exatamente #d2b48c funcionamento das CSS, portanto
porque eles não foram criados para isso. pode ser uma cor. continue lendo. Logo, você verá que
Mesmo que isso signifique aprender duas pode ser bem mais específico quanto à
linguagens, você descobrirá que, como aplicação dessas regras e, fazendo isso,
cada linguagem é boa naquilo que faz, na é possível criar designs muito legais.
32 Capítulo 1
dy” no
SS? O que
gnifica que
“{” e “}” se
do elemento
o, quando você
serif, está
o dentro do
ser sans-serif.
modo de
ortanto
ê verá que
fico quanto à
fazendo isso,
uito legais.
HTML CSS
Saudações, CSS; estou feliz que você esteja
aqui porque quero esclarecer algumas
confusões sobre nós.
É mesmo? Que tipo de confusão?
Muitas pessoas pensam que minhas
tags dizem ao navegador como exibir o
conteúdo. Isso não é verdade! Eu trabalho
com a estrutura e não com a apresentação.
Ah, é. Eu não gostaria de ver as pessoas lhe
dando crédito pelo meu trabalho!
Bem, você pode ver como as pessoas
podem ficar confusas; afinal, é possível
utilizar HTML sem CSS e ainda assim
obter uma página com um visual decente.
“Decente” soa um pouco exagerado, você
não acha? Quero dizer, a maneira como a
maioria dos navegadores exibe o HTML
puro parece um pouco ordinária. As
pessoas precisam entender o poder das
CSS e como nós podemos facilmente dar
um ótimo estilo às páginas Web.
Ei, eu também sou muito poderoso. Ter
seu conteúdo estruturado é muito mais
importante do que ter algo bonitinho. O
estilo é muito superficial; é a estrutura do
conteúdo que interessa.
Fala sério! Sem mim, as páginas Web
seriam muito chatas. E não apenas isso,
tire a capacidade de adicionar estilo às suas
páginas e ninguém as levará a sério. Tudo
parecerá malfeito e nada profissional.
Nossa, que ego, hein? Acho que eu não
poderia esperar outra coisa de você. Você
está apenas tentando fazer uma declaração
da moda com todo esse estilo sobre o qual
está falando.
34 Capítulo 1
HTML CSS
Declaração da moda? Um bom design
e uma boa apresentação podem ter um
efeito enorme na legibilidade e usabilidade
das páginas. E você deveria estar contente
porque minhas regras de estilo flexíveis
permitem que os designers façam qualquer
tipo de coisas interessantes com seus
elementos sem bagunçar sua estrutura.
Certo. Na verdade, somos linguagens
totalmente diferentes, o que é bom,
porque eu não gostaria de ter nenhum de
seus designers de estilo bagunçando meus
elementos de estrutura.
Não se preocupe, vivemos em universos
separados.
É, isso é óbvio para mim todas as vezes
que olho para as CSS, essa linguagem
alienígena.
Tá, e HTML pode ser considerada uma
linguagem? Alguém já viu algo mais
desajeitado do que aquelas tags?
Milhões de escritores Web discordariam de
você. Eu tenho uma linguagem boa e limpa
que se encaixa perfeitamente ao conteúdo.
Dê só uma olhada nas CSS; elas são
elegantes e simples, e não sinais de menor
e maior patéticos <em> <torno> <de>
<tudo>. <Olha> <gente> <,> <eu> <posso>
<falar> <como> <o> <sr.> <HTML><!>
Ei, sua estúpida, já ouviu falar de tags de
fechamento?
Veja bem, não importa aonde você for,
está cercada por tags <style>. Boa sorte ao
tentar escapar delas!
Rá! Eu vou te mostrar... Sabe por quê? Eu
posso escapar.
Fique ligado!