Hola mi pregunta es si el margin-left:3em del elemento span se establece de acuerdo a su elemento contenedor o a al elemento body
estos son los estilos
div{border:2px solid green;margin-left:2em;font-size: 18px;}
p{/*margin-left:1em;*/border:2px solid red;font-size:10px}
span{border:2px solid black;margin-left:3em;}
<body>
<div>
soy un div
<p>
soy un parrafo
<span>soy span</span>
</p>
</div>