Marcus Rashford was on target once again as Barcelona moved four points clear at the top of the La Liga table with a win at Elche.
The reigning champions took a sixth-minute lead when Dani Olmo threaded through Lamine Yamal and the 18-year-old rounded Elche goalkeeper Inaki Pena before passing into an empty net.
Elche, who last defeated Barcelona in December 1974, equalised through Alvaro Rodriguez, who beat the visitors’ high line and calmly found the far corner after 29 minutes.
But Hansi Flick’s side restored their lead 11 minutes later when Ferran Torres blasted Frenkie De Jong’s cut-back into the roof of the net.
Manchester United loanee Rashford came off the bench at half-time and added a third with a tap-in following a low pass across goal from Yamal.
It was Rashford’s 10th goal of the season and his second in as many games after he netted against Copenhagen in the Champions League on Wednesday.
Barcelona were the better side throughout and created a hatful of chances.
Dani Olmo hit the woodwork in the early stages and, with the scoreline at 1-1, Torres struck the crossbar first with his boot and then with his head on the rebound.
Just before the break, Torres rounded the goalkeeper but his shot was cleared off the line by Elche defender Victor Chust.
The victory was Barcelona’s 15th win in 16 games in all competitions.
It puts pressure on second-placed Real Madrid, who have played one game fewer and could cut the Catalans’ lead at the top of the table back to one point when they face local rivals Rayo Vallecano at home on Sunday (13:00 GMT).