Real Madrid beat Sevilla 1-0 at the Sanchez Pizjuan on Saturday in La Liga to ease the pressure on coach Zinedine Zidane.
Subscribe now for unlimited access.
$0/
(min cost $0)
or signup to continue reading
But there was no such relief for Barcelona who fell to their fourth defeat of the season in a 2-1 loss to Cadiz.
Barcelona are now 12 points behind Atletico Madrid who went top with a 2-0 victory against Valladolid.
Real Madrid's breakthrough came in the 56th minute, a goal that was at first credited to Sevilla keeper Bono.
He certainly got the last touch, but it was Brazilian winger Vinicius who diverted Ferland Mendy's cross to send the ball squirming past the keeper.
"It's my goal," said the 20-year-old forward. "I have the shot and it goes past the keeper."
Real Madrid dominated the first half, but Bono saved at full-stretch from Karim Benzema and Vinicius sent an effort from a Rodrygo Goes cross just wide.
In the end, Vinicius's goal was enough.
"They are three very important points," said Zidane. "It has not been very easy for us during the last three days.
"It was important to get the win and now we can rest and prepare for the next game."
Real Madrid's next match will be against city rivals Atletico Madrid, who went back to the top of the table with a 2-0 win over Valladolid.
Thomas Lemar got the opener with his first goal for Atletico Madrid after signing for them at the start of last season.
He arrived at the back post to convert Kieran Trippier's cross, and the wing-back was involved in the second too, nodding on Jan Oblak's kick for half-time substitute Marcos Llorente to sprint clear and score.
In the last game of the night, Barcelona travelled to Cadiz hoping to close the gap on the leaders but they trailed after just nine minutes when Alvaro Gimenez took advantage of sloppy defending to turn in a corner at the back post.
Barcelona levelled when Pedro Alcala diverted Jordi Alba's cross past his own keeper but more defensive errors gifted Cadiz the lead again.
A Jordi Alba throw bounced over Clement Lenglet's knee and Alvaro Negredo beat Marc-Andre ter Stegen to the ball to score.
"It's a lot of defeats so it's worrying. It's true that there is a long way to go but we keep slipping up," said Sergio Busquets.
"We reacted to the first goal and we had the ball and the chances but when it appeared we might get the next goal we conceded again through another mistake."
Earlier Levante beat nine-man Getafe 3-0.
Australian Associated Press