- Desenvolvimento de Aplicações Web
- COLTEC/UFMG
- Professor: João Eduardo Montandon
O projeto CSS Zen Garden é um site criado por Dave Shea que tem como objetivo demonstrar o poder do CSS no design web. O conceito é simples: fornecer um único arquivo HTML básico e uma variedade de arquivos CSS diferentes que mudam a aparência do site sem modificar a estrutura HTML. O projeto se tornou uma vitrine para designers e desenvolvedores demonstrarem suas habilidades em design usando apenas CSS.
Os participantes são incentivados a criar designs inovadores, criativos e impressionantes, mostrando o que pode ser alcançado usando CSS. Os designers podem baixar o HTML fornecido e criar uma folha de estilo personalizada para transformar o site em sua própria obra de arte. O site é atualizado regularmente com novos designs apresentados pelos participantes e continua sendo uma plataforma popular para testar as habilidades de design e programação.
O objetivo desta atividade é criar seu próprio layout CSS!
Você deverá entregar a atividade por meio dos arquivos index.html e style.css.
Para realização e entrega dos exercícios, siga as instruções disponíveis na página da disciplina. Para cada questão, gere um commit específico!!
A primeira etapa a se fazer ao estilizar uma página é definir uma aparência geral. Mais especificamente, você deverá customizar as seguintes características da página:
- Fonte geral da página não serifada
- Escolha dentre uma das opções presentes aqui.
- Paleta de cores básica (cor de fundo e cor da fonte), onde a cor de fundo deverá ser escura, e a cor da fonte deverá ser clara.
- Recomendo o uso da ferramenta Adobe Kuler.
Para isso, você deverá:
- Defina um tamanho fixo de fonte geral pra página inteira (
html). - Adicionar ao
bodyda página o estilo de fonte, uma cor de fundo, e cor para fonte - Identar os parágrafos em pelo menos
1rem
- Alinhe todos os títulos da página para centro ou a direita
- Defina o tamanho dos títulos
h1em1.8rem - Defina o tamanho dos títulos
h2em1.4rem - Defina o tamanho dos títulos
h3em1.2rem
Localize os elementos que representam a seção de resumo e principal da página, e aplique a elas:
- Alinhamento a direita ou centralizado para a seção de resumo
- Espaçamento entre as linhas de
1.5para os parágrafos da seção principal
Customize todos os links e abreviaturas (<abbr>) da página da seguinte forma:
- A fonte em negrito (700) para os links, e uma cor diferente da padrão
- A mesma cor aplicada no link deverá ser aplicada para as abreviaturas
- Defina a largura geral da página em 80%, limitado a no máximo
1280pxde largura
Para esse site, iremos "fixar" o rodapé ao final da página para que ele fique sempre visível.
- Transforme o rodapé em um elemento de bloco, e o faça ocupar toda a largura disponível
- Fixe o rodapé para que fique visível na parte debaixo da página o tempo todo
- Aumente o espaçamento entre links presentes dentro do rodapé para 1% a esquerda e a direita (utilize os atributos de
margin) - Inclua um padding no rodapé em si de 1%, e uma cor de fundo que contraste com o fundo do site
- Aplique uma cor de fonte que contraste com a cor de fundo
- Defina a margem inferior de toda a página para um valor que seja equivalente a altura do rodapé
- Flutue o painel principal a esquerda, fazendo com que ele ocupe 66% da largura da página
- Flutue o painel lateral também a esquerda, fazendo com que ele ocupe 33% da largura da página
- Aplique um espaçamento interno de 10px a direita e a esquerda do painel lateral
Vamos dar uma melhorada visual nos menus presentes no site.
- Remova os bullets dos itens de menu do painel lateral
- Aumente o espaçamento entre os itens do menu para
1em - Centralize os títulos presentes em cada menu
- Inclua uma borda na parte superior de todos os itens de menu
- Inclua uma borda inferior apenas no último item das listas (dica: use pseudo-seletores!)
Vamos incrementar os parágrafos presentes no nosso texto.
Para a primeira letra do primeiro parágrafo das seções presentes no painel principal:
- Altere o tamanho da fonte para
2em - Coloque a fonte no maior nível de negrito possível
- Aplique bordas sólidas de
0.5pxno topo e abaixo
- Remova o underline presente nos links
- Exiba o underline apenas quando o usuário estiver interagindo com o link
- Customize as cores dos links para as seguintes situações: normal, hover, e visitado
- Para os links presentes na área de
design-selection- Coloque-os em bloco
- Inclua o glifo
\00A9antes o link referente ao autor - Altere o tamanho do glifo para
0.2reme o tamanho da fonte para0.8em
Você deverá criar um arquivo CSS chamado grid.css e nele implementar um layout de grid de 12 colunas.
Esse layout deverá seguir as seguintes restrições:
- Criar uma classe
.containerpara representar o canvas do grid. - Criar uma classe
.rowpara representar uma linha do grid. - As colunas deverão ser representadas pela classe
.col*, onde*representa o número de colunas. Por exemplo, a classe.col1ocupa uma coluna, enquanto a classe.col6ocupa seis colunas. - Espaçamento de 1% a esquerda e a direita de cada coluna.
Modifique o layout da página para que ele suporte o grid layout. Para isso você deverá seguir estritamente os passos abaixo:
- Adicionar
.containeradiv.page-wrapper - Criar uma
div.rowque contenha:section.introdiv.maineaside.sidebar
- Aplique a seguinte divisão de colunas:
section.intro: 12 colunasheader.banner: 4 colunasdiv.summary: 8 colunasdiv.preamble: 12 colunas
div.main: 8 colunasdiv.explanation: 12 colunasdiv.participation: 12 colunasdiv.requirements: 12 colunas
aside.sidebar: 4 colunas
Nesta parte você deverá adicionar suporte ao design responsivo através do uso de media queries. Esse suporte se dará da seguinte forma:
- Definir breakpoints para dimensão mobile (
small), tablet (medium), e desktop (large). - O layout atual deverá ser atribuído a versão desktop.
- Na versão tablet, o
header.bannerediv.summarydeverão ocupar 12 colunas, cada. - Na versão mobile, a
div.maine oaside.sidebardeverão ocupar 12 colunas, cada.