A ver prueba con esto:
Código:
var div;
function mostrar() {
var sel = document.getElementById('lista').value;
obj = document.getElementById(sel);
if(sel == "nada"){
div.style.display = 'none'
}
else{
div = obj;
div.style.display = div.style.display == 'none'? 'block' : 'none';
}
}
Con respecto a lo que preguntas de si hay mejor forma...si la habría, con AJAX podrías ir obteniendo los contenidos dinamicamente pero no se si te comensará.