Como criar: Galeria de portfólio

Aprenda a criar uma grade de galeria de portfólio responsiva usando CSS.

Galeria de portfólio

Aprenda a criar uma galeria de portfólio responsiva usando CSS, que varia entre 4 colunas, 2 colunas e colunas de largura total com base na largura da tela:

Experimente pessoalmente

Como criar um site de portfólio

Primeiro passo - Adicionar HTML:

<!-- Conteúdo principal (site centralizado) -->
<div class="main">
<h1>MYLOGO.COM</h1>
<hr>
<h2>PORTFÓLIO</h2>
<p>Reduza a janela do navegador para ver o efeito responsivo.</p>
<!-- Galeria de portfólio em grade -->
<div class="row">
  <div class="column">
    <div class="content">
      <img src="beijing.jpg" alt="Beijing" style="width:100%">
      <h3>Meu Trabalho</h3>
      <p>Lorem ipsum..</p>
    </div>
  </div>
  <div class="column">
    <div class="content">
      <img src="hangzhou.jpg" alt="Hangzhou" style="width:100%">
      <h3>Meu Trabalho</h3>
      <p>Lorem ipsum..</p>
    </div>
  </div>
  <div class="column">
    <div class="content">
      <img src="chongqing.jpg" alt="Chongqing" style="width:100%">
      <h3>Meu Trabalho</h3>
      <p>Lorem ipsum..</p>
    </div>
  </div>
  <div class="column">
    <div class="content">
      <img src="shenzhen.jpg" alt="Shenzhen" style="width:100%">
      <h3>Meu Trabalho</h3>
      <p>Lorem ipsum..</p>
    </div>
  </div>
</div>
<div class="content">
  <img src="bear.jpg" alt="Bear" style="width:100%">
  <h3>Outro Trabalho</h3>
  <p>Lorem ipsum..</p>
</div>
<!-- Fim do conteúdo principal -->
</div>

Segundo passo - Adicione CSS:

* {
  box-sizing: border-box;
}
body {
  background-color: #f1f1f1;
  padding: 20px;
  font-family: Arial;
}
/* Centraliza o site */
.main {
  max-width: 1000px;
  margin: auto;
}
h1 {
  font-size: 50px;
  word-break: break-all;
}
.row {
  margin: 8px -16px;
}
/* Adiciona espaçamento interno entre as colunas (se necessário) */
.row,
.row > .column {
  padding: 8px;
}
/* Cria quatro colunas alinhadas lado a lado */
.column {
  float: left;
  width: 25%;
}
/* Limpa o flutuamento após a linha */
.row:after {
  content: "";
  display: table;
  clear: both;
}
/* Conteúdo */
.content {
  background-color: white;
  padding: 10px;
}
/* Layout responsivo - cria um layout de duas colunas em vez de quatro */
@media screen and (max-width: 900px) {
  .column {
    width: 50%;
  }
}
/* Layout responsivo - faz duas colunas empilhadas, em vez de lado a lado */
@media screen and (max-width: 600px) {
  .column {
    width: 100%;
  }
}

Experimente pessoalmente

Páginas relacionadas

Tutorial:Como criar uma biblioteca de portfólio com função de filtragem