Когда вы комбинируете 'content' с: after и: before, он добавляет контент до или после существующего контента.Итак, внутри div.Если вы хотите, чтобы он анализировал дополнения вокруг div в целом, вам нужно что-то вроде
<div id="w">
<div id="f">World </div>
</div>
#w:before{
background: yellowgreen;
content: "Hello ";
}
#f{
width: 200px;
height: 200px;
background: gold;
margin: 100px;
padding: 100px;
}
#w:after{
background: burlywood;
content: "StackOverflow";
}