Bom dia/ tarde/ noite,
estou praticando HTML e CSS e tenho grande dificuldade em relação a posição dos elementos.
Sei que todo elemento é equivalente a um bloco, mas quando coloco a propriedade position em algum elemento o fluxo da pagina muda e sai tudo de ordem.
No caso desse código esta tudo agrupado no topo da pagina.
HTML
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="css/style.css">
<title>Treino html e css</title>
</head>
<body>
<header>
<div class="container">
<h1>Logo</h1>
<nav class="menu-opcoes">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">sobre</a></li>
<li><a href="#">Agenda</a></li>
<li><a href="#">contato</a></li>
</ul>
</nav>
</div>
</header>
<section class="principal">
<div class="container">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Commodi tempora illum ad unde molestias,
fugiat nihil iure delectus eligendi odio et recusandae dolor, porro nostrum, autem quo maiores a
assumenda?
</p>
</div>
</section>
</body>
</html>
CSS
@charset "UTF-8";
/** Geral **/
*{
margin:0;
padding: 0;
}
.container{
width: 940px;
margin: 0 auto;}
/** Header **/
header{
border-top: 5px solid #c24e4b;
background: rgba(30, 44, 53, 0.8);
height: 95px;
width: 100%;
position: absolute; /** O header tem uma posição absoluta em relação a pagina web*/}
header .container{
position: relative; }
h1 {
font-size: 2em;
margin: 0.67em 0;}
.menu-opcoes {
position: absolute;
right: 0;
top: 10px;
font-size: 1.2em;
font-weight: lighter;}
.menu-opcoes ul{
padding-left: 0;}
.menu-opcoes li{
display: inline-block;
margin: 5px;
padding: 5px;
box-sizing: border-box;}
.menu-opcoes a {
color: #fff;
text-decoration: none;}
.menu-opcoes a:hover {
text-decoration: underline; }
/** FIM Header **/
/** Principal*/
.principal{
background: url(../imagens/principal.jpg);
}