Boa tarde,
coloquei o
header{
position:relative !important;
}
e continua com as letras flutuando em cima da imagem quando redimensiona.
<!DOCTYPE html>
<html lang="pt">
<head>
<meta charset="UTF-8">
<title>João da Silva - Desenvolvedor Web</title>
<link rel="icon" href="img/favicon.png">
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<link rel="stylesheet" href="css/index.css">
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Crimson+Text:400,400italic,600">
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Open+Sans+Condensed:700">
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Shadows+Into+Light">
<link href="https://fonts.googleapis.com/css?family=Shadows+Into+Light" rel="stylesheet">
</head>
<body>
<header class="titulo-principal">
<img class="foto-home" src="img/eu.jpg" alt="Foto de João da Silva">
<h1 class="titulo">João da Silva</h1>
<p class="subtitulo-principal">Desenvolvedor web</p>
<ul>
<li class="palavra-home eficiencia">Eficiência</li>
<li class="palavra-home boas-praticas">Boas práticas</li>
<li class="palavra-home codigo-limpo">Código limpo</li>
<li class="palavra-home css3">CSS3</li>
<li class="palavra-home html5">HTML5</li>
<li class="palavra-home javascript">JavaScript</li>
<li class="palavra-home acessibilidade">Acessibilidade</li>
<li class="palavra-home responsivo">Responsivo</li>
<li class="palavra-home otimizacoes">Otimizações</li>
<li class="palavra-home agilidade">Agilidade</li>
<li class="palavra-home design">Design</li>
</ul>
</header>
<main>
<section class="secao-inicio saudacao">
<p class="saudacao"><span class="saudacao-inicio">Olá,</span> meu nome é <strong>João da Silva</strong> <span class="saudacao-ultima-linha">e eu construo <em>sites maravilhosos</em></span></p>
<a class="botao-index" href="bio.html">Conheça mais um pouco sobre mim</a>
</section>
<section class="secao-inicio trabalhos">
<h2>Trabalhos</h2>
<ul>
<li><img src="img/bmw.png" alt="Site da BMW"></li>
<li><img src="img/ibm.png" alt="Site da IBM"></li>
<li><img src="img/uol.png" alt="Site da UOL"></li>
</ul>
<a class="botao-index veja-mais" href="portfolio.html">Veja mais</a>
</section>
<section class="secao-inicio blog">
<h2 class="titulo-blog">Blog</h2>
<small>Últimos posts</small>
<ol>
<li>
<a href="blog.html">O essencial de design responsivo</a>
<p class="inicio-post">
Design responsivo tem ganho cada vez mais atenção como técnica de desenvolvimento de páginas web para dispositivos móveis. Mas como começar?
</p>
</li>
<li>
<a href="blog.html">Por que fazer páginas acessíveis?</a>
</li>
<li>
<a href="blog.html">JavaScript não obstrusivo</a>
</li>
</ol>
<a class="botao-index" href="blog.html">Veja mais</a>
</section>
</main>
<footer class="rodape">
<h2>Vamos conversar?</h2>
<p>Você pode entrar em contato comigo <a href="contato.html">por e-mail</a> ou pelo telefone <a href="tel:+551234567890">(12) 3456-7890</a></p>
</footer>
</body>
</html>
CSS
.inicio-post{
position: absolute;
color:black;
background-color: #fff;
top: 3em;
right:1em;
padding:1em;
height: 10em;
left:18em;
}
.foto-home {
height: 200px;
text-align:center;
position:relative;
margin-right:42%;
margin-top: 2%;
}
.saudacao p {
color: #99A;
line-height: 1;
height: 25rem;
padding-left:5em;
padding-right:5em;
padding-top: 7em;
padding-bottom:10%;
box-sizing:border-box;
}
.saudacao{
display:block;
text-align: left;
}
.saudacao-inicio {
color: #889;
position:relative;
font-size:5em;
}
.saudacao-ultima-linha {
text-align: right;
display: block;
position:relative;
}
.saudacao strong {
color: #000;
font-size: 4em;
}
.saudacao em {
color: #851944;
font-size:5em;
}
.botao-index {
background-color: #851944;
color: #FFF;
border: .2em solid black;
width: 400px;
display: block;
position: relative;
text-align: center;
margin:auto;
margin-bottom:5rem;
padding: 1rem;
}
.secao-inicio h2 {
text-transform: uppercase;
text-align:left;
margin:0 auto;
padding-bottom: 1em;
text-align: left;
padding-left: .7em;
padding-top:1em;
font-size: 2.5em;
}
.trabalhos {
background-color: #3C1D3D;
border-top: 10px solid #000;
border-bottom: 10px solid #000;
padding-top: 5px;
height:30em;
}
.trabalhos h2 {
color: #FFF;
}
.trabalhos ul {
overflow: hidden;
border: 10px solid black;
}
.trabalhos li {
float: left;
width: 33.333%;
}
.trabalhos img {
width: 100%;
display: block;
}
.blog {
background-color: #999;
color: #FFF;
border-bottom: 10px solid #851944;
height: 28em;
box-sizing:border-box;
position: relative;
}
.blog h2{
padding-bottom: 0px;
margin-bottom: 0px;
}
.blog small{
margin-left: 35px;
padding-top: 0px;
margin-top: 0px;
}
.blog ol{
margin-top: 3em;
}
.blog li a {
color: #FCF;
line-height: 3em;
margin-left: 2em;
}
.rodape {
background-color: #000;
color: #FFF;
position:none;
margin-bottom:0;
margin-top:0;
height:100%;
}
footer a {
color: #F99;
}
main {
width: 100%;
padding-bottom: 0;
float: none;
}
.titulo-principal{
background-color: #851944;
height:25rem;
text-align:center;
border-bottom: .5rem solid black;
color:white;
margin:0 auto;
}
header{
position:relative !important;
}
.titulo{
padding-top:15rem;
font-size: 300%;
text-align:center;
color:#FFF;
text-transform: uppercase;
}
.subtitulo-principal{
text-align:center;
margin-top: 0;
font-family :"open sans condensed","arial", sans-serif;
}
.veja-mais{
margin-top:3em;
margin-bottom:5em;
}
.palavra-home{
position: absolute;
font-family: 'Shadows Into Light', cursive;
color:#D5447E;
font-weight: bold;
}
.eficiencia{
top:10%;
right:20%;
}
.boas-praticas{
top:28%;
left:15%;
}
.javascript{
top:5%;
right:30%;
}
.design{
top:17%;
right:28%;
}
.html5{
top:22%;
right:15%;
}
.otimizacoes{
top:28%;
right:22%;
}
.agilidade{
top:5%;
left:32%;
}
.responsivo{
top:8%;
left:15%;
}
.acessibilidade{
top:15%;
left:28%;
}
.codigo-limpo{
top:20%;
left:10%;
}
.css3{
top:23%;
left:30%;
}