2 contenedores posicionados con "relative" nunca se podrán superponer. Ocuparan dos líneas horizontales diferentes.
 
Si un elemento lo posiciona sobre otro también lo hará todo lo contenido en él. A no ser que...   
Código HTML:
Ver original<!DOCTYPE html>
 .div1 {
    background: red;
    height: 148px;
    width: 174px;
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
}
.div2 {
    background: blue;
    height: 288px;
    width: 174px;
    position: relative;
}
span {
    text-align: center;
    position: relative;
    z-index: 3;
}