Lionel Messi scored twice to lead the Barca fightback, as Pep Guardiola's men cancelled out second-placed Real Madrid's 3-0 win over Athletic Bilbao earlier in the day.

Corona gave Almeria a shock lead against the reigning champions after 49 minutes but Messi - who had hit the post just before the interval - equalised from the spot virtually straight away and youngster Thiago Alcantara gave the Catalans the lead before the Argentina forward added a late third.

Kaka scored two penalties as Madrid proved they will not give up their title bid without a fight with their impressive victory over Athletic at San Mames.

Kaka netted from the spot at the start of either half following fouls on Angel Di Maria, while Cristiano Ronaldo climbed off the bench to net Madrid's third midway through the second period.

Sevilla's hopes of breaking into the top four were effectively ended with a 2-2 draw at Mallorca.

Overhauling the nine-point gap between themselves and fourth-placed Villarreal was always going to be a hard enough task, but this loss of points means their hopes are now virtually non-existent.

Akihiro Ienaga gave Mallorca the lead with a 16th-minute header, only for Alvaro Negredo to level from the spot.

But a moment of brilliance from Jonathan De Guzman restored Mallorca's lead, before a glaring error from home keeper Dudu Aouate allowed Ivan Rakitic to level for a second time.