Escolar Documentos
Profissional Documentos
Cultura Documentos
AULA 4
• tipos de layout;
• layout de colunas flexíveis;
• layout com grids CSS;
• backgrounds;
• combinando várias propriedades do background.
CONTEXTUALIZANDO(PROBLEMATIZAÇÃO)
2
Vamos começar pelas técnicas mais antigas, ambas parte do padrão CSS
Box Model.
.ingredientes, .preparo {
width: 40%;
float:left;
}
3
Figura 1 – Exemplo de layout flutuante
Ao final dos anos 2000 surgiram novas técnicas para determinar o layout
de páginas HTML. Um se baseia em colunas flexíveis, e o outro implementa o
uso de um grid. Ambas especificações não se tornaram – ainda – padrões do
4
W3C, mas já são adotadas pela maioria dos navegadores. Vamos ver como
funcionam.
Uma forma mais recente de determinar o layout de uma página é o
Flexible Box Layout ou, simplesmente, flexbox. Nessa maneira de trabalhar,
quem recebe as configurações é o elemento que contém os elementos que
queremos determinar suas posições – aquela divisão em main, section e afins é,
novamente, útil.
Vamos te mostrar como conseguir um layout similar ao anterior, mas
usando essa técnica. No seu CSS, comece retirando a propriedade float:left do
seletor .ingredientes, .preparo. Depois, acrescente o seguinte código:
article {
display:flex;
flex-wrap: wrap;
flex-direction: row;
}
Vamos ver o que cada linha faz. A linha display: flex determina que o
elemento é um flex container e, consequentemente, que os elementos que ele
contém serão flex items e se comportarão como tal. O flex-wrap: wrap permite
que os itens apareçam em múltiplas linhas, e o flex-direction: row determina que
os elementos sejam dispostos na mesma direção que a direção do texto da
página.
Salve o CSS e confira o HTML. O resultado deve ser igual ao da Figura 1,
que havia sido feito com técnicas de layout flutuante.
Experimente mudar alguns valores: mude para flex-wrap: nowrap e/ou
flex-direction: row-reverse. Teste diferentes combinações e veja os
5
Figura 2 – Exemplo de layout de colunas flexíveis
article {
display:grid;
grid-template-columns: 33% 33% 33%;
}
O que esse código faz? O display: grid indica que o conteúdo deve se
comportar como um grid. o grid-template-columns: 33% 33% 33% indica que o
layout se divide em três colunas, de 33% de largura cada uma. Que são três
colunas é algo implícito, já que há três valores ali. Sua página HTML deve ficar
como a da Figura 3.
6
Figura 3 – Exemplo de layout com grid
O grid trouxe uma nova unidade de medida: fr. Essa unidade representa
uma fração do espaço disponível. Ou seja, em vez de ter calculado a
porcentagem de cada coluna, seria possível ter usado a linha grid-template-
columns: 1fr 1fr 1fr. O resultado seria o mesmo.
article {
display:grid;
grid-template-columns: 1fr 1fr;
}
header {
grid-column-start: 1;
grid-column-end: 3;
}
7
Estamos indicando que começa no começo da coluna 1 e termina no
começo da coluna 3. Ou seja, duas colunas de largura. Verifique seu HTML e
compare com a Figura 4.
8
Ele ainda menciona a vantagem de usar grid ao ter que criar media
queries – explicando rapidamente, opções de CSS para diferentes tipos de telas
–, já que será necessário modificar menos elementos.
Por isso, é importante conhecer as várias maneiras de trabalhar, para
saber aproveitar o melhor de cada uma delas, tendo como resultado um código
limpo, prático e funcional.
TEMA 4 – BACKGROUNDS
.testesfundo {
margin:20px;
height:600px;
width:600px;
}
.testesfundo {
background: tomato;
}
9
4.1 Cores
Vamos começar pela cor. Isso você já sabe como fazer. Para esses
exemplos, vamos determinar as cores usando nomes, para facilitar. Mas você
pode usar qualquer outra maneira mais precisa.
body {
background: tomato;
}
background-color: tomato;
4.2 Gradientes
.testesfundo {
background: linear-gradient(blue, pink);
}
10
Figura 5 – Gradiente em CSS
Por padrão, ele vai de cima para baixo. Podemos indicar que ele vá da
esquerda para a direita:
11
Observe que aqui estamos usando apenas duas cores, mas um gradiente
pode ter várias. Basta enumerá-las. Experimente! O resultado não
necessariamente é agradável, mas a técnica pode ser muito útil.
que você já pode imaginar como vai ficar. Mas a parte divertida é combinar com
outras propriedades do fundo:
Sobrepor vários fundos pode ser bem poderoso. Teste este código e veja
o que acontece. Repare que começamos a quebrar as linhas, para facilitar a
compreensão do código.
.testesfundo {
background:
12
linear-gradient(blue, transparent),
linear-gradient(to right, gold, red);
}
E com esse valor é que podemos usar os gradientes não para fazer
gradientes, mas para fazer listras. Se a partir da segunda cor você indicar duas
porcentagens, você estará indicando o começo e o fim da listra. Copie o seguinte
código e compare o resultado com a Figura 9:
.testesfundo {
background:
repeating-linear-gradient(
-45deg,
transparent 0,
transparent 25%,
dodgerblue 0,
dodgerblue 50%
),
repeating-linear-gradient(
45deg,
transparent 0,
transparent 25%,
tomato 0,
tomato 50%
);
background-blend-mode: multiply;
background-size: 80px 80px;
}
É uma combinação de tudo o que você viu até agora, e mais duas novas
propriedades. O resultado é a Figura 10.
14
as camadas do Photoshop. Essa maneira de mesclar as cores não é
exclusividade do background, então, saiba que pode ser útil em outras ocasiões.
A outra é o background-size, que determina o tamanho de cada “unidade” do
background.
TROCANDO IDEIAS
NA PRÁTICA
Você já tem quase tudo o que é necessário para produzir seu portfólio.
Agora que você sabe produzir layouts usando CSS, pode começar a produzir o
seu portfólio. Se for uma única página, tranquilo. Se forem várias, produza um
template e vá duplicando os arquivos e mudando o conteúdo. Lembre-se de
manter todo o CSS em um único arquivo, e de explorar as técnicas de resetar o
CSS caso queira descobrir técnicas mais complexas.
FINALIZANDO
Nesta aula você viu brevemente como trabalhar com várias maneiras de
produzir um layout em CSS. Considere que, mais do que ensinar, mostramos a
você o caminho: há muitas possibilidades, opções, técnicas e – claro
– gambiarras para conseguir o que você quer ou precisa. Tome isso como ponto
de partida, tenha sempre à mão referências de HTML e CSS para consultas
eventuais, e conheça o verdadeiro potencial dessas técnicas.
15
REFERÊNCIAS
MDN Contributors. Relationship of grid layout to other layout methods. MDN Web
Docs. Mozilla, 2021. Disponível em: <https://developer.mozilla.org/en-
US/docs/Web/CSS/CSS_Grid_Layout/Relationship_of_Grid_Layout>. Acesso
em: 25 agos. 2021.
16