changing overflow property of the second container to "hidden" somehow breaks the surrounding container:
.title {
margin-top: 100px;
margin-left: 50px;
font-size: 30px;
position: absolute;
/* debug */
background-color: blue;
}
.first {
/* debug */
background-color: green;
}
.second {
overflow: hidden;
display: inline-block;
/* debug */
background-color: red;
}
<div>
<div class="title">
<span class="first">Start</span>
<span class="second"> end</span>
</div>
</div>