Real Mallorca beat Valencia 2-1 at home to hand the Primera Liga title to Barcelona.
Valencia travelled to Son Moix knowing that only a win would keep the pressure on reigning champions Barca.
Juan Arangon dented their chances after just nine minutes when he put the hosts, who needed a win to ease their own relegation worries, ahead.
Migeul Angulo levelled for the visitors on 16 minutes but Cristiano Doni's goal two minutes after the break gave Mallorca a vital three points and finally kill-off Valencia's faint title hopes as Barcelona retained their championship.
Osasuna maintained their pursuit of an automatic UEFA Champions League place as an Inaki Munoz goal was enough to beat Atletico Madrid 1-0 in the capital.
Sevilla are also still in the Champions League hunt after a 3-0 win over Getafe thanks to a Ruben Pulido own goal, along with strikes from Javier Saviola and Luis Fabiano.
Deportivo La Coruna came from a goal down to beat Espanyol and Ivan Carril and Diego Tristan cancelled out Luis Garcia's opener.
Athletic Bilbao earned a vital three points in their fight against relegation as Francisco Yeste got the only goal of the win against Real Zaragoza.
That win proved even more crucial given Alaves also managed a vital win, as goals from John Aloisi and Nene gave them a 2-0 win at home against Real Betis.
Those results have all-but condemned Cadiz to relegation despite a superb comeback from 2-0 down to draw 2-2 with Real Sociedad.
Xavier Prieto and Gaizka Garitano put the visitors ahead but Cadiz battled away and goals from Fabian Estoyanoff and an injury-time Lucas Lobos penalty gave the hosts a point.
Champions League semi-finalists Villarreal beat relegated Malaga 2-1 with goals from Guillermo Franco and Alessio Tacchinardi meaning Gerardo's penalty proved to be in vein.
Alaves 2-0 Real Betis
Athletic Bilbao 1-0 Real Zaragoza
Atletico Madrid 0-1 Osasuna
Cadiz 2-2 Real Sociedad
Celta Vigo 0-1 Barcelona
Espanyol 1-2 Deportivo La Coruna
Real Mallorca 2-1 Valencia
Sevilla 3-0 Getafe
Villarreal 2-1 Malaga