Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
10
respostas

[Dúvida] Não consigo deixar as páginas responsivas, ajuda por favor!

Gente me ajuda por favor.

Já olhei aqui no fórum como a galera fez pra deixar responsivo a parte de produtos e contatos, mas eu testando as soluções deles, não deu certo pra mim. O que posso fazer para deixar responsivo?

Outro ponto, como no vídeo o professor deixou a main vazia no css também deixei, ai bagunçou a página de contatos, usei uma outra solução que ajudou.

CSS .formulario-contato { width: 940px; margin: 30px auto; margin-left: 160px; }

.formulario-tabela { margin: 30px 160px 40px; }

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

10 respostas

INDEX

Logo da Barbearia Alura

    <nav>
      <ul>
        <li>
          <a
            href="../HTML5 e CSS3 parte 1 - Crie uma página da Web/index.html"
            >Home</a
          >
        </li>
        <li>
          <a
            href="../HTML5 e CSS3 parte 2 - Posicionamento, listas e navegação/produtos.html"
            >Produtos</a
          >
        </li>
        <li>
          <a
            href="../HTML5 e CSS3 parte 3 - Trabalhando com formulários e tabelas/contato.html"
            >Contato</a
          >
        </li>
      </ul>
    </nav>
  </div>
</header>

<img class="banner" src="./imagens/banner.jpg" />

<main>
  <section class="principal">
    <h2 class="titulo-principal">Sobre a Barbearia Alura</h2>

    <img
      class="utensilios"
      src="./imagens/utensilios.jpg"
      alt="Utensilios de um barbeiro."
    />

    <p>
      Localizada no coração da cidade a
      <strong>Barbearia Alura</strong> traz para o mercado o que há de
      melhor para o seu cabelo e barba. Fundada em 2019, a Barbearia Alura
      já é destaque na cidade e conquista novos clientes a cada dia.
    </p>

    <p id="missao">
      <em>
        Nossa missão é:
        <strong
          >"Proporcionar auto-estima e qualidade de vida aos
          clientes"</strong
        >.
      </em>
    </p>

    <p>
      Oferecemos profissionais experientes e antenados às mudanças no mundo
      da moda. O atendimento possui padrão de excelência e agilidade,
      garantindo qualidade e satisfação dos nossos clientes.
    </p>
  </section>

  <section class="mapa">
    <h3 class="titulo-principal">Nosso estabelecimento</h3>
    <p>Nosso estabelecimento esta localizado no coração da cidade.</p>

    <div class="mapa-conteudo">
      <iframe
        src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3656.448598130907!2d-46.634653385542414!3d-23.588239368469353!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x94ce5a2b2ed7f3a1%3A0xab35da2f5ca62674!2sCaelum%20-%20Escola%20de%20Tecnologia!5e0!3m2!1spt-BR!2sbr!4v1580916426151!5m2!1spt-BR!2sbr"
        width="100%"
        height="300"
        frameborder="0"
        style="border: 0"
        allowfullscreen=""
      ></iframe>
    </div>
  </section>

  <section class="beneficios">
    <h3 class="titulo-principal">Benefícios</h3>

    <div class="conteudo-beneficios">
      <ul class="lista-beneficios">
        <li class="itens">Atendimento ao cliente</li>
        <li class="itens">Espaço diferenciado</li>
        <li class="itens">Localização</li>
        <li class="itens">Profissionais Qualificados</li>
        <li class="itens">Pontualidade</li>
        <li class="itens">Limpeza</li>
      </ul>
      <img src="./imagens/beneficios.jpg" class="imagem-beneficios" />
    </div>

    <div class="video">
      <iframe
        width="100%"
        height="315"
        src="https://www.youtube.com/embed/wcVVXUV0YUY"
        frameborder="0"
        allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"
        allowfullscreen
      ></iframe>
    </div>
  </section>
</main>

<footer>
  <img
    src="../HTML5 e CSS3 parte 2 - Posicionamento, listas e navegação/imagens/logo-branco.png"
  />
  <p class="copyright">© Copyright Barbearia Alura - 2019</p>
</footer>

PRODUTOS

Logo da Barbearia Alura

    <nav>
      <ul>
        <li>
          <a
            href="../HTML5 e CSS3 parte 1 - Crie uma página da Web/index.html"
            >Home</a
          >
        </li>
        <li><a href="produtos.html">Produtos</a></li>
        <li>
          <a
            href="../HTML5 e CSS3 parte 3 - Trabalhando com formulários e tabelas/contato.html"
            >Contato</a
          >
        </li>
      </ul>
    </nav>
  </div>
</header>

<main>
  <ul class="produtos">
    <li>
      <h2>Cabelo</h2>
      <img src="./imagens/cabelo.jpg" />
      <p class="produto-descricao">
        Na tesoura ou máquina, como o cliente preferir
      </p>
      <p class="produto-preco">R$ 25,00</p>
    </li>
    <li>
      <h2>Barba</h2>
      <img src="./imagens/barba.jpg" />
      <p class="produto-descricao">Corte e desenho profissional de barba</p>
      <p class="produto-preco">R$ 18,00</p>
    </li>
    <li>
      <h2>Cabelo+Barba</h2>
      <img src="./imagens/cabelo+barba.jpg" />
      <p class="produto-descricao">Pacote completo de cabelo e barba</p>
      <p class="produto-preco">R$ 35,00</p>
    </li>
  </ul>
</main>

<footer>
  <img src="./imagens/logo-branco.png" />
  <p class="copyright">&copy; Copyright Barbearia Alura - 2019</p>
</footer>

CONTATO

Logo da Barbearia Alura

    <nav>
      <ul>
        <li>
          <a
            href="../HTML5 e CSS3 parte 1 - Crie uma página da Web/index.html"
            >Home</a
          >
        </li>
        <li>
          <a
            href="../HTML5 e CSS3 parte 2 - Posicionamento, listas e navegação/produtos.html"
            >Produtos</a
          >
        </li>
        <li><a href="contato.html">Contato</a></li>
      </ul>
    </nav>
  </div>
</header>

<main>
  <form class="formulario-contato">
    <label for="nomesobrenome">Nome e Sobrenome</label>
    <input type="text" id="nomesobrenome" class="input-padrao" required />

    <label for="email">Email</label>
    <input
      type="email"
      id="email"
      class="input-padrao"
      required
      placeholder="seuemail@dominio.com"
    />

    <label for="telefone">Telefone</label>
    <input
      type="tel"
      id="telefone"
      class="input-padrao"
      required
      placeholder="(XX) XXXXX-XXXX"
    />

    <label for="mensagem">Mensagem</label>
    <textarea
      cols="70"
      rows="10"
      id="mensagem"
      class="input-padrao"
      required
    ></textarea>

    <fieldset>
      <legend>Como prefere o nosso contato?</legend>
      <label for="radio-email"
        ><input
          type="radio"
          name="contato"
          value="email"
          id="radio-email"
        />
        Email</label
      >

      <label for="radio-telefone"
        ><input
          type="radio"
          name="contato"
          value="telefone"
          id="radio-telefone"
        />
        Telefone</label
      >

      <label for="radio-whatsapp"
        ><input
          type="radio"
          name="contato"
          value="whatsapp"
          id="radio-whatsapp"
          checked
        />
        Whatsapp</label
      >
    </fieldset>

    <fieldset>
      <legend>Qual horário prefere ser atendido?</legend>
      <select>
        <option value="">Manhã</option>
        <option value="">Tarde</option>
        <option value="">Noite</option>
      </select>
    </fieldset>

    <label class="checkbox"
      ><input type="checkbox" checked /> Gostaria de receber nossas
      novidades por email?</label
    >

    <input type="submit" value="Enviar formulário" class="enviar" />
  </form>

  <table class="formulario-tabela">
    <thead>
      <tr>
        <th colspan="2">Nossos horários</th>
      </tr>
      <tr>
        <th>Dia</th>
        <th>Horário</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>Seguda</td>
        <td>8h ~ 20h</td>
      </tr>
      <tr>
        <td>Quarta</td>
        <td>8h ~ 20h</td>
      </tr>
      <tr>
        <td>Sexta</td>
        <td>8h ~ 20h</td>
      </tr>
      <tr>
        <td colspan="2">São Paulo</td>
      </tr>
    </tbody>
  </table>
</main>

<footer>
  <img
    src="../HTML5 e CSS3 parte 2 - Posicionamento, listas e navegação/imagens/logo-branco.png"
    alt="Logo da Barbearia Alura"
  />
  <p class="copyright">&copy; Copyright Barbearia Alura - 2019</p>
</footer>

CSS

body { font-family: 'Montserrat', sans-serif; background: linear-gradient(to top, #8888, #fefefe, transparent); }

header { background: #bbbbbb; padding: 20px 0; }

.caixa { position: relative; width: 940px; margin: 0 auto; }

nav { position: absolute; top: 110px; right: 0; }

nav li { display: inline; margin: 0 0 0 15px; }

nav a { text-transform: uppercase; color: #000000; font-weight: bold; font-size: 22px; text-decoration: none; }

nav a:hover { color: #c78c19; text-decoration: underline; }

.produtos { width: 940px; margin: 0 auto; padding: 50px 0px; } .produtos li { display: inline-block; text-align: center; width: 30%; vertical-align: top; margin: 0 1.5%; padding: 30px 20px; box-sizing: border-box; border: 2px solid #000000; border-radius: 10px; }

.produtos li:hover { border-color: #c78c19; }

.produtos li:active { border-color: #088c19; }

.produtos li:hover h2 { font-size: 34px; }

.produtos h2 { font-size: 30px; font-weight: bold; }

.produto-descricao { font-size: 18px; }

.produto-preco { font-size: 22px; font-weight: bold; margin-top: 10px; }

footer { text-align: center; background: url('./imagens/bg.jpg'); padding: 40px 0; }

.copyright { color: #ffffff; font-size: 13px; margin: 20px 0 0; }

main { }

form { margin: 40px 0; }

.formulario-contato { width: 940px; margin: 30px auto; margin-left: 160px; }

.formulario-tabela { margin: 30px 160px 40px; }

form label, form legend { display: block; font-size: 20px; margin: 0 0 10px; }

.input-padrao { display: block; margin: 0 0 20px; padding: 10px 25px; width: 50%; }

.checkbox { margin: 20px 0; }

.enviar { width: 40%; padding: 15px 0; background: orange; color: white; font-weight: bold; font-size: 18px; border: none; border-radius: 5px; transition: 1s all; cursor: pointer; }

.enviar:hover { background: darkorange; transform: scale(1.2); }

table { margin: 20px 0 40px; } thead { background: #555555; color: white; font-weight: bold; }

td, th { border: 1px solid #000000; padding: 8px 15px; }

/* CSS da página inicial */ .banner { width: 100%; }

.titulo-principal { text-align: center; font-size: 2em; margin: 0 0 1em; clear: left; }

.principal { padding: 3em 0; background: #fefefe; width: 940px; margin: 0 auto; }

.principal p { margin: 0 0 1em; }

.principal strong { font-weight: bold; }

.principal em { font-style: italic; }

.utensilios { width: 120px; float: left; margin: 0 20px 20px 0; }

.mapa { padding: 3em 0; background: linear-gradient(#fefefe, #888888); }

.mapa-conteudo { width: 940px; margin: 0 auto; }

.mapa p { margin: 0 0 2em; text-align: center; }

.beneficios { padding: 3em 0; background: #888888; }

.conteudo-beneficios { width: 640px; margin: 0 auto; }

.lista-beneficios { width: 40%; display: inline-block; vertical-align: top; }

.itens { line-height: 1.5; }

.itens:first-child { font-weight: bold; }

.itens:before { content: '★'; }

.imagem-beneficios { width: 59%; opacity: 1; transition: 400ms; box-shadow: 10px 10px 10px 0 #000000; }

.imagem-beneficios:hover { opacity: 0.3; }

.video { width: 560px; margin: 2em auto; }

@media screen and (max-width: 480px) { .caixa, .principal, .conteudo-beneficios, .mapa-conteudo, .video { width: auto; }

h1 { text-align: center; }

nav { position: static; }

.lista-beneficios, .imagem-beneficios { width: 100%; } }

Olá, Renato.

Tudo bem?

Você já testou o @media está alterando pelo menos na versão mobile? O seu cabeçalho que é o <header> não está responsivo ainda mas o professor já fez em aula você pode fazer para testar o @media.

A página de Produtos só precisa colocar um card embaixo do outro e a página de contato é diminuir a largura dos elementos, inputs etc. Tudo dentro do @media.

Espero ter ajudado, qualquer dúvida manda aqui. Valeu.

Eai Renan, Tranquilo.

Então cara eu fiz a parte do header no @media que o professor fez, tanto que a só a primeira página ficou mobile, mas as demais não ficaram.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

No @media usei esse código, mas não mudou em nada a página também

.produtos { text-align: center; }

.produtos li { display: block; width: auto; margin: auto; }

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

viu?

solução!

Já sei o que é, está faltando a tag <meta name="viewport" content="width=device-width" /> nos <head> dos arquivos das páginas de Produtos e Contatos.

Sem ela não funciona a responsividade, é ela que sabe o tamanho da tela do dispositivo.

Oi Renan, era exatamente isso que faltava colocar, a tag nas outras páginas de produtos e contatos. Com isso consegui prosseguir e terminar a responsividade. Muito obrigado! Só preciso saber como publicar agora kk

Abaixo deixo como finalizei meu projeto, para que possa ajudar que está com dificuldade também.

@media screen and (max-width: 480px) { /Parte do home/ .caixa, .principal, .conteudo-beneficios, .mapa-conteudo, .video { width: auto; }

h1 { text-align: center; }

nav { position: static; text-align: center; }

.lista-beneficios, .imagem-beneficios { width: 100%; }

.lista-beneficios li { padding: 5px; margin: 20px 20px; }

.principal { margin: 10px; }

.imagem-beneficios { margin: 10px; width: 95%; }

.video { width: 95%; }

/Parte de produtos/ .produtos { text-align: center; }

.produtos { width: auto; } .produtos li { width: 90%; margin: 10px auto; } /Parte de contato/

.formulario-contato { width: auto; margin: auto; padding: 1em; }

.input-padrao { margin: 10px 0px 10px 10px; }

.enviar { padding: auto; width: 100%; }

.formulario-tabela { margin: 50px 20px 50px; } }

Renato, ajustei igual o seu mas o meu n ficou responsive, e sim, uis a tag ,meta viewpoint nas páginas. (https://cdn1.gnarususercontent.com.br/1/1350118/e2734f56-f017-4565-ab91-533eb84957fa.png)

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Não sei dizer Vinicius, pois no meu caso precisa da tag viewport nas demais páginas, e para ajustar o produtos e contatos, fui olhando o da galera e vendo o que funcionava comigo.