Karim Benzema and Gareth Bale tested Mallorca goalkeeper Manuel Reina early on before Thibaut Courtois saved brilliantly from Iddrisu Baba. Vinicius Junior opened the scoring with a delightful scooped finish just before the 20-minute mark -- as Mallorca appealed for a foul by Dani Carvajal -- and followed it by hitting the bar minutes later.
In the second half, Sergio Ramos doubled Madrid's lead with an expertly placed free kick, making this the captain's best ever scoring season with eight league goals.
Madrid went into this game under pressure once again after Barca's win a day earlier -- and they delivered against a talented but fragile Mallorca team to maintain their position as leaders. They've taken maximum points so far in this sprint to the finish line and show no signs of slowing down.
The conundrum of how to fit star player Eden Hazard and in-form Vinicius Junior into the same team looks like it might have been solved too. A day after Zinedine Zidane insisted the pair were compatible, the coach was proved right, with the Belgian impressing centrally and the Brazilian teenager full of confidence on the wing.
Mallorca played well for long spells and caused Madrid problems, with on-loan youngster Take Kubo ably supported by teammates Anti Budimir, Lago Junior and Baba. Madrid's defence was put under severe pressure at times, especially when the Japanese winger got on the ball, and only just held up.
Bale made his first start since February and didn't do enough to justify it. The forward worked hard for the team but largely failed to impress and was withdrawn after 70 minutes.
Manager rating out of 10
8 -- Zidane clearly fancied his team's chances on the night, squeezing Hazard, Bale, Vinicius and Benzema into an attacking line-up. It mostly worked well, with Hazard taking up the No. 10 position.
The absence of the suspended Casemiro meant a shift in midfield too. Fede Valverde and Luka Modric were the only traditional midfielders in the XI and they both covered a huge amount of ground. It was no surprise when Zidane made use of all five changes in the second half.
Player ratings (1-10; 10 = best. Players introduced after 70 minutes get no rating)
GK Thibaut Courtois, 7 -- Made two important early saves, getting fingertips to Baba's goal-bound shot and denying Lago Junior at his near post. Another clean sheet.
DF Dani Carvajal, 7 -- Struggled at times to cope with Lago Junior, who scored the winner when these teams met in October. Won the ball before Madrid's opener with a shoulder barge that some will argue was a foul.
DF Sergio Ramos, 8 -- Scored once again. Booked for a first-half foul on Budimir and risked a second yellow later on. Had been expected to rest after picking up a knock at Anoeta, but it takes more than that to keep the captain out of the team.
DF Raphael Varane, 7 -- Impressive in his 200th La Liga game. Didn't put a foot wrong in the first half, including blocking a dangerous Kubo shot.
DF Ferland Mendy, 7 -- Improving offensively, showing his pace with one early burst forward. Seems to enjoy partnering with Vinicius on the left but picked up a booking, which means Marcelo will start against Espanyol.
MF Federico Valverde, 7 -- A more central, deeper role than in his two previous appearances. Had a lot of work to do alongside Modric in a two-man midfield and thus didn't create much except one gorgeous pass down the touchline for Vinicius.
MF Luka Modric, 8 -- Stole the ball more than once to begin a Real Madrid attack and provided Vinicius with the assist for the opener. Booked early in the second half to earn a suspension and tired before being withdrawn.
FW Eden Hazard, 7 -- Enjoyed a free role behind Benzema after being rested against Real Sociedad on Sunday. Shot wide in the first half, and faded later.
FW Vinicius Junior, 8 -- Real Madrid's best player again, starting together with Hazard for the first time in a competitive game. Scored the opener and hit the woodwork in an electric opening 45 minutes.
FW Gareth Bale, 6 -- Has been peripheral since La Liga returned and was only marginally better here. Had one long shot saved and later hit a defender with another. Did make an effort defensively, occasionally risking a booking.
FW Karim Benzema, 7 -- Tested Reina with the first chance of the game after a defensive mistake, and later dropped in a perfectly weighted pass for Vinicius, who hit the bar.
MF Toni Kroos, 6 -- Replaced Eden Hazard with an hour gone to solidify Madrid's midfield presence and help protect the 2-0 lead.
MF Isco, N/R -- Back much earlier than expected from injury, playing the last 20 minutes.
FW Marco Asensio, N/R -- Came on for Bale.
FW Mariano Diaz, N/R -- Played the last few minutes.
FW Brahim Diaz, N/R -- Made a late impact, nearly scoring from a well-placed low shot.