<!DOCTYPE html>
<html>
<head>...</head> <!-- meta-informação sobre a página -->
<body>...</body> <!-- tudo que é visível -->
</html>
<p>
, <img>
, <h1...6>
, <a href="">
color
, margin
,
background-color
, font-family
<strong></strong>
<em></em>
<del></del>
e <ins></ins>
<mark></mark>
<strong></strong>
:muscle:<p><strong>Não se esqueça!</strong> Tragam seus fones de ouvido.</p>
<strong>
são desenhados em negrito:
::: result
Não se esqueça! Tragam seus fones de ouvido.
:::<em></em>
<p>Gatos são animais <em>bonitinhos</em>.</p>
<em>
são desenhados em itálico:
::: result
Gatos são animais bonitinhos.
:::<del></del>
e <ins></ins>
:pencil:<p>O jardineiro é Jesus.</p>
<p>E as árvores... somos <del>nós</del> <ins>nozes</ins>.</p>
<del>
são riscados e <ins>
são sublinhados:
::: result
O jardineiro é Jesus.<mark></mark>
:part_alternation_mark:<p><mark>HTML, CSS e JavaScript</mark> são as três linguagens da Web.</p>
<mark>
possuem o fundo com a cor amarela:
::: result
HTML, CSS e JavaScript são as três linguagens da Web.
:::<ol></ol>
<ul></ul>
<q></q>
e <blockquote></blockquote>
<ol></ol>
e <ul></ul>
<ol>
<li>Linux</li>
<li>Windows</li>
</ol>
:::
<ul>
<li>Uva</li>
<li>Maçã</li>
</ul>
:::
Romário disse: <q>o Pelé calado
é um poeta.</q>
::: result
Romário disse: o Pelé calado é um poeta
.
:::
<blockquote>
Tô quebrado, peixe
</blockquote> - Romário negando-se
a pagar mais de R$ 3 mil de pensão
::: result
Tô quebrado, peixe
Pergunta
~ Por que um parágrafo está sempre abaixo do outro, mas
um elemento <strong>
pode ficar ao lado de outro texto?
<p>
seguidos (lado a lado) no código
<p>Primeiro</p> <p>Segundo</p>
Primeiro
Segundo
:::
<strong>
seguidos
<strong>Primeiro</strong> <strong>Segundo</strong>
Por quê isso acontece?
Alguns elementos são do tipo block
, outros são inline
:
Elementos block
~ são dispotos um abaixo do outro
~ ex: parágrafos, títulos e subtítulos, listas
Elementos inline
~ são dispostos um à direita do outro
~ ex: links, strong, em, imagens
Vamos ver como o navegador faz…
block
inline
block
e inline
, juntos
block
~ ocupa largura toda
~ cima para baixo
~ podemos definir width
e height
~ podemos definir margin
e padding
inline
~ tem o tamanho suficiente
~ esquerda para direita
~ ignora width
e height
~ ignora margin-top
e margin-bottom
<p>
vs. <strong>
…block
:
<p>
<h1>, <h2> ... <h6>
<ul>
, <ol>
, <li>
inline
:
<strong>
<em>
<del>
, <ins>
<mark>
<em>
<a>
<img>
padding
~ Espaçamento interno, da borda para dentro
border
~ Tamanho da borda
margin
~ Espaçamento externo, da borda para fora
padding
(esp. interno)margin
(esp. externo)margin-top: 12px;
margin-right: 3px;
margin-bottom: 6px;
margin-left: 9px;
margin: 12px 3px 6px 9px;
/*
ordem: ⬆️ ➡️ ⬇️ ⬅️
(tipo um relojinho)
*/
padding
p {
width: 260px;
}
Observação: não é possível definir as dimensões de elementos inline. Esses elementos possuem exatamente o tamanho necessária para apresentar seu conteúdo
<table></table>
<tr></tr>
<td></td>
e <th></th>
<caption>...</caption>
<thead>...</thead>
<tbody>...</tbody>
<tfoot>...</tfoot>
<table>...</table>
<tr>...</tr>
, linha da tabela<td></td>
, célula de dados<th></th>
, célula do cabeçalho<table>
e finaliza com </table>
<tr>
correspondente, finalizada com </tr>
<td>...</td>
armazena os dados de uma célula da tabela
<td>
, utiliza-se a tag <th>
<td>
e <th>
devem SEMPRE estar dentro de uma linha (<tr>
) Repare que, por padrão, as células <th>
ficam em negrito
<table>
<tr>
<th colspan="2">Pessoas</th>
</tr>
<tr>
<td>2005046102</td>
<td>Epaminondas</td>
</tr>
</table>
colspan="X"
faz com que aquela célula ocupe X
colunas
rowspan="Y"
, onde Y
é o
número de linhas que a célula vai ocuparcolspan
e
de rowspan
(clique para ver)<table>
<caption>Gastos em janeiro</caption>
<thead> <!-- cabeçalho -->
<tr>
<th>Descrição</th><th>Valor</th>
</tr>
</thead>
<tbody> <!-- corpo -->
<tr>
<td>Alimentação</td><td>300,00</td>
</tr>
<tr>
<td>Transporte</td><td>100,00</td>
</tr>
</tbody>
<tfoot> <!-- rodapé -->
<tr>
<td>Total</td><td>400,00</td>
</tr>
</tfoot>
</table>
<thead>
, <tbody>
e <tfoot>
devem marcar as linhas que compõem o
corpo, o cabeçalho e o rodapé
border
é atalho para border-width
, border-style
e
border-color
p {
border-width: 1px; /* largura de 1 pixel */
border-style: solid; /* borda toda colorida */
border-color: red; /* cor vermelha */
}
p { /* preferimos esta forma, mais sucinta */
border: 1px solid red;
}
border-style: solid
border-style: double
border-style: groove
border-style: outset
border-style: dotted
border-style: dashed
border-style: inset
border-style: ridge
border-top
, border-right
, border-bottom
e
border-left
p {
border-top: 1px solid red;
border-bottom: 2px dotted blue;
}
Sou o mestre das bordas!
:::
border-top-width
,
border-top-style
e border-top-color
definem, respectivamente, a largura,
o estilo e a cor da borda do topoAo adicionar a borda nas células de uma tabela o resultado ficaria assim ➡️
td, th {
border: 1px solid black;
}
Para mudarmos isso, usamos na tabela border-collapse: collapse
:
td, th {
border: 1px solid black;
}
table {
border-collapse: collapse;
}
gh-pages
¹
README.md
do repositório contém o enunciado do exercício¹O uso do branch gh-pages
é necessário para que a atividade seja avaliada.
index.html
, loja.html
)<h1>
, <h2>
, <p>
, <strong>
, <em>
, <blockquote>
, <q>
, <a>
, <img>
, <ul>
, <li>
, <ol>
, <table>
etc.color
, font-size
, margin
, padding
, font-family
,
font-style
, border
, background-*
, text-align
, border-collapse
etc.img {
display: block;
margin-left: auto;
margin-right: auto;
}
display: block
é necessário porque <img>
é inline
e não é possível distribuir o espaço lateral sobrando para um elemento inline
<a href="http://www.google.com">Link externo</a>
<a href="downloads/exemplo.zip">Link interno</a>
<a href="mailto:fegemo@cefetmg.br">Me envie um email</a>
<a href="tel:+553133196870">Liga pra mim</a>
target="..."
dos linksA tag de hiperlink possui um atributo target="..."
que pode ter
os seguintes valores:
_self
~ O recurso “linkado” abre na própria aba (valor padrão)
~ Exemplo: <a href="..." target="_self">Sobre mim</a>
_blank
~ O recurso “linkado” abre em uma nova aba
~ Exemplo: <a href="..." target="_blank">Salgadinhos</a>
Para criar um link para dentro da própria página:
<a href="#id-de-um-elemento">Link interno</a>
Repare o #id-de-um-elemento
↖️
<h2 id="id-de-um-elemento">Um título</h2>
<h2></h2>
fique visível e no topo da tela (mas o que é esse atributo id
?)id
de um elemento HTMLid
. Exemplos:
<img src="..." id="logomarca-da-empresa">
<h1 id="titulo-principal">Origem da Polícia Intergalática</h1>
<ul id="melhores-pokemon">...</ul>
id
deve ser único na página
id
id
para estilizar elementos em CSS!::: figure .figure-slides.clean
:::
—
id
/* tanto <p>, qto <h1>, qto <ul> */
p, h1, ul {
color: black;
}
p { /* usamos 'p', que é o nome da tag de parágrafo */
margin-left: 5%;
}
img {
border-radius: 50%;
}
body {
font-size: 20px;
}
strong {
color: forestgreen;
}
#
(hashtag)…
#titulo-principal {
font-family: 'Verdana', sans-serif;
}
<h1 id="titulo-principal">...</h1>
)<h2>
...
<style>
#ponche-vermelho {
color: red;
}
</style>
</head>
<body>
<h1>Receitas para Monstros</h1>
<h2 id="ponche-vermelho">
Ponche Vermelho</h2>
<h2>Joelhos de Lagartixa</h2>
<h2>Orelhas Verdes Fritas</h2>
</body>
</html>
::: result
:::
body {
background-image: url(caminho-para-a-imagem);
background-repeat: no-repeat;
background-position: left bottom;
background-size: cover;
}
background-image
para escolher que imagem será usadabackground-repeat: no-repeat
para que a imagem apareça só 1xbackground-position: left bottom
para fixar que o canto inferior
esquerdo da imagem fique sempre visívelbackground-size: cover
para que a imagem cubra todo o espaço da tela
background-position
left top
, center center
, center bottom
etc.
background-size: cover
: imagem redimensionada para cobrir todo o espaçobackground-size: contain
: imagem redimensionada para aparecer completamente
body
como 100%
:
body {
height: 100%;
}
body
e do
html
como 100%
:
html, body {
min-height: 100%;
}
#titulo {
text-shadow: 2px 2px black;
}