Bom dia pessoal,
Semelhante a um post lido, https://cursos.alura.com.br/forum/topico-problema-no-alinhamento-posicionamento-34505, eu tive o mesmo problema referente ao posicionamento. http://imgur.com/a/Mjmym E no post, encontrei uma solução que gerou o mesmo erro que o dele. http://imgur.com/a/c82Qv Onde foi proposta a seguinte solução:
.portfolio::after{
content: '';
clear: left;
display: block;
}
E tive o mesmo problema com o tamanho das caixas. http://imgur.com/a/IgvI3 Que foi resolvido com a propriedade min-height.
Apesar de o problema ter sido resolvido, eu gostaria de entender melhor o que foi feito e o porque do ocorrido, se possível. Pois o html fornecido no final da atividade, com tudo completo, não apresenta o mesmo erro. E também nao entendi o "potifiolio::after"aplicado. Teria como alguém me explicar melhor a função?
Coding HTML do portifolio
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Portifolio - João da Silva</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="icon" href="img/favicon.png">
<link rel="stylesheet" href="css/port.css">
<link rel="stylesheet" href="css/geral.css">
</head>
<body>
<main>
<h1 class="titulo_principal">Portifolio</h1>
<div class="main_conteudo">
<p> Veja abaixo a lista dos meus projetos mais relevantes</p>
<ul class="templates">
<li>
<a href="www.bmw.com">
<figure>
<img id="figure1" src="img/bmw.png" alt="Template bmw">
<figcaption>BMW.com: reformulação de design e implementação de HTML, CSS e JavaScript</figcaption>
</figure>
</a>
</li>
<li>
<a href="www.globo.com">
<figure>
<img src="img/g1.png" alt="Template globo">
<figcaption>G1.com.br: reformulação de design e implementação de HTML, CSS e JavaScript</figcaption>
</figure>
</a>
</li>
<li>
<a href="www.imb.com">
<figure>
<img src="img/ibm.png" alt="Template ibm">
<figcaption>IBM.com: aplicação de progressive enhancement em conjunto com aplicação back-end</figcaption>
</figure>
</a>
</li>
<li>
<a href="www.uol.com.br">
<figure>
<img src="img/uol.png" alt="Template uol">
<figcaption>UOL.com.br: reformulação de design e implementação de HTML, CSS e JavaScript</figcaption>
</figure>
</a>
</li>
</ul>
</div>
</main>
<img class="foto_joao" src="img/eu.jpg" alt="Foto de João da Silva">
<aside class="navegacao_site">
<nav>
<h1>João da Silva</h1>
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="portfolio.html">Portfolio</a></li>
<li><a href="bio.html">Sobre mim</a></li>
<li><a href="blog.html">Blog</a></li>
<li><a href="contato.html">Contato</a></li>
</ul>
</nav>
<ul class="icones_sociais">
<li>
<a class="github" href="#">Github</a>
</li>
<li>
<a class="twitter" href="#">Twitter</a>
</li>
<li>
<a class="linkedin" href="#">LinkedIn</a>
</a>
</li>
</ul>
</aside>
<footer class="footer_bottom">
© João da Silva 2017
</footer>
</body>
</html>
Código CSS do portifolio:
.templates li {
float: left;
border: 8px solid black;
background-color: #FAFFFC;
width: 45%;
box-sizing: border-box;
padding: 16px;
margin-right: 16px;
margin-bottom: 16px;
min-height: 310px;
}
.templates img{
width: 100%;
}
.templates::after{
content: '';
clear: left;
display: block;
}
Código CSS geral:
body {
font-family: sans-serif;
background-color: #F2FFFC;
font-size: 20px;
line-height: 1.5;
}
h1,
h2 {
font-family: sans-serif;
font-weight: bold;
}
main h2 {
font-size: 40px;
clear: both;
}
.titulo_principal {
text-align: center;
background-color: #851944;
color: #FFF;
padding: 25px;
margin: 0;
border-bottom: 10px solid #000000;
font-size: 60px;
text-transform: uppercase;
}
.main_conteudo {
width: 720px;
margin: auto;
padding: 30px;
padding-bottom: 85px;
}
p {
text-align: left;
margin: 20px 0px;
font-size: 16px;
}
.navegacao_site {
background-color: #3C1D3D;
color: #F2FFFC;
text-align: center;
}
.footer_bottom {
background-color: #000;
color: #F2FFFC;
clear: both;
position: fixed;
bottom: 0;
width: 100%
}
main a {
color: #851944;
}
.navegacao_site a {
color: inherit;
font-family: sans-serif;
}
.navegacao_site,
footer {
padding: 20px;
}
nav a {
text-transform: lowercase;
}
aside h1 {
margin-bottom: 25px;
font-size: 30px;
}
.icones_sociais li {
display: inline-block;
}
.icones_sociais a {
text-indent: -9999px;
width: 40px;
height: 40px;
display: inline-block;
}
.github {
background-image: url(../img/github.png);
}
.twitter {
background-image: url(../img/twitter.png);
}
.linkedin {
background-image: url(../img/linkedin.png);
}
strong {
font-weight: bold;
}
em {
font-style: italic;
}
aside,
.foto_joao {
float: right;
border-bottom: 10px solid black;
border-left: 10px solid black;
box-sizing: border-box;
}
.foto_joao{
position: absolute;
top: 0;
right: 0;
}
aside {
box-sizing: border-box;
width: 15%;
position: relative;
top: 310px;
}
main {
width: 85%;
float: left;
}