2
respostas

Nada que eu altero no @media aplica na pagina

Não estou conseguindo deixar meu site na parte de produtos responsivo, já tentei alterar várias propriedades diferentes más nada se aplica, alguém pode ajudar, pfv! :D

`

    <link rel="stylesheet" href="reset.css">
    <link rel="stylesheet" href="style.css">
    <script src="produtos.js"></script>
</head>
<body>
    <header>
        <div class="caixa">
            <h1><img src="public/logo.png"></h1>
            <nav>
                <ul>
                    <li><a href="index.html">Home</a></li>
                    <li><a href="produtos.html">Produtos</a></li>
                    <li><a href="contato.html">Contato</a></li>
                </ul>
            </nav>
        </div>
    </header>

    <main>
        <ul class="produtos">
            <li >
                <h2>Cabelo</h2>
                <img src="public/cabelo.jpg" alt="imagem-cabelo">
                <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="public/barba.jpg" alt="imagem=barba">
                <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="public/cabelo+barba.jpg" alt="imagem-cabelo-barba">
                <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="public/logo-branco.png">
        <p class="copyright">©Copyright Barbearia Minha - 2022</p>
    </footer>
</body>
`
body {
    font-family: 'Montserrat', sans-serif;
    background: white;
}

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 0;
}

.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;
    font-size: 34px;
}

.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("public/bg.jpg");
    padding: 40px 0;
}

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

form {
    margin: 40px 0;
}

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;
}

@media screen and (max-width:480px) {
    main {
        background-color: #088C19;
        width: 100%;
    }

}
2 respostas

Olá, Arthur.

Tudo bem?

Para funcionar o modo responsivo você precisa adicionar a tag viewport dentro do <head> no HTML, no seu não tem ainda, é ela que sabe qual tela está sendo utilizada no caso desktop ou mobile, celular.

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

Uma dica que deixo do responsivo é adicionar um display: block; em .produtos li dentro do @media screen and (max-width:480px) isso vai deixar os cards dos produtos um em baixo do outro, ai você pode adicionar as margens etc:

.produtos li{
      display: block;
    }

Valeu Arthur, espero ter ajudado. Qualquer dúvida manda aqui.

Bom dia, e muito obrigado analisando o código de vocês pude observar e encontrar onde errei no meu, obrigado a todos e bons estudos. eu escrevi Divece o correto Divece, @meta, o correto @media.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software