Supponete di stare sviluppando una revisione del layout di questo blog. Insomma, tirate su un sito di prova, cominciate a lavorare con il foglio di stile per aggiustare questo e quello, risolvete vari problemi a forza di imprecazioni… tutto normale.
Poi, quando siete praticamente alla fine e tutto pare a posto, vi rendete conto che improvvisamente i link dell’inserto qui a sinistra sono diventati impossibili da cliccare con Firefox (1.5) e con Safari. Vengono visualizzati correttamente, ma se ci portate sopra il mouse e cliccate, il browser seleziona il testo del post a fianco, come se pensasse che la sezione di pagina visualizzata in quel punto fosse l’articolo e non invece l’inserto.
Ripartite con le imprecazioni, perquisite la rete con Google, e poi partite con il debugging alla vecchia maniera, cominciando a togliere dei div qua e là per vedere se così funziona e capire quali fattori influenzano il problema. Effettivamente, eliminando gli articoli l’inserto ritorna cliccabile… ma non vi pare una soluzione adottabile.
Alla fine, a forza di cercare, trovate questo, che rimanda a questo. Sembra essere un bug vecchio e leggermente diverso, ma, nel dubbio, provate ad aggiungere un “position: relative;” alla dichiarazione dell’inserto – che, messo così, è come dire al browser “aspetta che ti dirò dove spostare questo riquadro”, e poi però non dirgli nulla; insomma una dichiarazione semanticamente priva di valore, tanto è vero che dopo averla inserita l’inserto non si sposta nè si posiziona da alcuna altra parte.
E però, magicamente, i link ritornano cliccabili.
Pare che una combinazione infausta di settaggi del margine inferiore interno del riquadro, insieme alla sovrapposizione della scatola flottante a sinistra, faccia scattare un baco da qualche parte nel motore di rendering di Mozilla; inserendo una indicazione apparentemente inutile, si fa scattare va a sapere quale “if” nel codice e si finisce in un altro ramo, che stavolta funziona.
Certo che, a pensare alla quantità di giorni uomo che il mondo perde per tener dietro alle stranezze dei CSS e ai bachi dei motori di rendering, ci sarebbe da mandare al diavolo chiunque si sia inventato tutto questo, e tornare ai bei siti grigetti con le scritte in Times New Roman.