The sun definitely. Do NOT tumble dry or iron the stains. (iron around them if you really need to iron the garment)
If I am not doing a wash that day, but have a few stained things, I either put them in a pre wash with bio powder (and leave until next day) or soak in a bowl with a 40 deg bio solution. Soak/pre-wash as soon as possible after the stain has happened.
Sometimes you think things are ruined, but after a few more washes it will fade a lot and often disappear.
We stopped bibs after about 2 1/2, but dd asks for a "tissue bib" i.e. paper napkin tucked into her neck when eating pasta etc.