The time delay between neutrinos and photons does not tell us directly about the absolute mass of the neutrinos. The time delay between a neutrino of mass $m$ and a massless neutrino does:
$$
\Delta t = \frac{d}{v} - \frac{d}{c} \approx 0.5 \left(\frac{mc^2}{E}\right)^2 d,
$$
where $\Delta t$ is the time delay in seconds, $v \approx c[1-\frac{1}{2}\left(\frac{mc^2}{E}\right)^2]$ from relativistic calculation, $d$ the distance to the supernova in 10 kpc (a "typical" value for Galactic supernova), neutrino rest mass $m$ in eV and neutrino energy in MeV. So it is a propagation-speed problem.
As for the reason of the delay between the neutrinos and the photons, several pieces of information should be helpful:
- It is hot in the core of the supernova -- so hot that the photons scatter a lot with free electrons before escaping from the core (see comment for a more detailed version); (electromagnetic interaction)
- Yet it is not hot enough to influence two of the three neutrinos, $\nu_{\mu}$ and $\nu_{\tau}$, almost at all, and only slightly for another ($\nu_{e}$); they just fly out of the core. (weak interaction)
- So this is a different-interaction (or, cross-section) problem.
Take SN1987A for example, the neutrinos arrived 2-3 hours before the photons. On the other hand, $\Delta t$ calculated above, if detected, would be $\leq 1$ sec. With these two values and a bit more thinking, you might conclude that this "time of flight" method could not constrain very well the neutrinos with smaller-than-eV masses; and you would be right. There are better ways to do that. Here is a reference: https://arxiv.org/abs/astro-ph/0701677.