Все достаточно просто. Ну вот смотри.
Как сделать тег невидимым?
Для этого используется стиль display:none; его само собой можно вставить как в css так и в сам тег. В нашем случае будет проще и наглядней его вставить в тег, вот так:  
Код:<span id="smile" style="display:none;">smailiki</span> 
Вставив такую строчку в html мы не увидим текст smailiki.
Можно использовать не span, это не столь принципиально. Если мы в style, display сменим на block.
Пример:  
Код:<span id="smile" style="display: block;">smailiki</span> 
Строчка станет видима. 
Через JavaScript это делается так так:
Невидим  
Код:document.getElementById('smile').style.display = "none"; 
Видим  
Код:document.getElementById('smile').style.display = "block"; 
Осталось написать JavaScript который будет проверять наш span и делать его видимым/невидимым.
Это можно сделать так: JavaScript  
Код:function showAndHide() {
if(document.getElementById('smile').style.display == "none")
   document.getElementById('smile').style.display = "block";
else
   document.getElementById('smile').style.display = "none";
return false;
} 
Ну и кнопочка с нашими смайликами: HTML  
Код:<a href="#" onclick="showAndHide()">off/on</a>
<span id="smile" style="display:none;">smailiki</span>