¡Muy bien! Me alegro de que consiguieras solucionarlo aunque yo cambiaría también la altura cuándo no muestras el contenido, algo así:
Código HTML:
<div style="padding-left: 10px">
<b>Spoiler: </b><span style="color: #A0A0A0">[ pulsa para ver ]</span>
<div style="border-radius: 6px 0px 0px 6px; border: 1px inset black; margin-right: 40%; margin-top: 5px">
<div style="cursor: pointer" title="Click to Reveal Contents" onclick="if (this.firstElementChild.style.visibility == 'hidden'){this.firstElementChild.style.visibility = 'visible'; this.firstElementChild.style.height='auto'; this.title='Click to Hide Contents'} else {this.firstElementChild.style.visibility = 'hidden'; this.firstElementChild.style.height='20px'; this.title='Click to Reveal Contents'}">
<div style="visibility: hidden; padding: 5px; height: 20px;">
Texto en cuestión lorem ipsum dolor sit amet lorem ipsum dolor sit amet consectetur voluptate velit esse cillum dolore eu lorem ipsum dolor sit amet consectetur voluptate velit esse cillum dolore eu lorem ipsum dolor sit amet consectetur voluptate velit esse cillum dolore eu lorem ipsum dolor sit amet consectetur voluptate velit esse cillum dolore eu lorem ipsum dolor sit amet consectetur voluptate velit esse cillum dolore eu
</div>
</div>
</div>
</div>
Es igual pero reduciendo el espacio del div cuándo no estés mostrando nada.
Un saludo