La "mia" soluzione e` una bozza molto grezza, per cui e` molto semplificata rispetto ad una soluzione reale.
E la mia soluzione prevede che l'offuscamento della pagina sia generato da un evento JS (non avrebbe senso altrimenti). Pero` la finestra opaca e la finestrella con il messaggio devono essere presenti prima dell'evento che li fa visualizzare (indicativamente essere caricati assieme al resto della pagina - con eccezioni in caso di uso di AJAX o sim). Quello che eventualmente si puo` modificare e` il testo contenuto nella finestrella, ma questo esula dagli scopi di questo thread.
Il codice JS potrebbe essere (esempio che utilizza l'evento click su un link): 
	codice:
	<noscript>Questo bottone funziona solo se JS e` attivo.&nbsp;</noscript>
clicca qui
 
Occore poi una piccola modifica del codice HTML e del CSS rispetto a prima: 
	codice:
	HTML:
<body>
  <div id="contenuto">
    qui il contenuto del sito
  </div>
  <div id="opacizzato" class="nascosto">
    <div>
      
contenuto della finestra modale</p>
      
chiudi la finestra opaca</p>
    </div>
  </div>
</body>
CSS:
#opacizzato.nascosto {
  display: none;
}
#opacizzato.lovedo {
  position: absolute;
  top:0; left:0;
  width: 100%;
  height: 100%;
  z-index: 20;
  background: url(semitrasp.png);   /* immagine di sfondo semitrasparente */
}