Milan called on some French flair to beat Roma at San Siro with Yacine Adli, Olivier Giroud and Theo Hernandez goals, taking them eight points clear in third place.
Both sides were smarting after midweek Coppa Italia elimination amid reports over the future of the coaches, though Jose Mourinho sat out a touchline ban. Ismael Bennacer, Samuel Chukwueze, Sardar Azmoun, Evan Ndicka and Houssem Aouar were all on international duty.
The injury lists included Alessandro Florenzi, Tommaso Pobega, Malick Thiaw and Fikayo Tomori for the hosts, although Theo Hernandez returned to his left-back role after weeks in central defence. Paulo Dybala, Renato Sanches, Tammy Abraham, Chris Smalling and Marash Kumbulla didn’t make the trip, but Rui Patricio was dropped for Mile Svilar’s first Serie A start of the season.
Olivier Giroud had the first shot on target after 38 seconds and Milan took the lead with a splendid solo effort from Adli. He gathered on the edge of the box, sold Rasmus Kristensen a dummy by pretending to shoot with his right foot, instead cut back inside and drilled into the bottom corner with his left. It was his first goal in the Rossoneri jersey.
Christian Pulisic stung Svilar’s gloves with a rapid counter-attack, then Theo Hernandez clipped the woodwork with his cross-shot from the by-line.
However, Mike Maignan got down to fingertip a deflected Zeki Celik strike inches wide after good work from Bryan Cristante.
Pulisic nodded a Leao cross just wide, Leandro Paredes blasted over from the edge of the area and Ruben Loftus-Cheek penalty appeals waved away, though he seemed to be going down before the Kristensen touch.
Leonardo Spinazzola tested Maignan from distance, but Gianluca Mancini went off injured at half-time, dropping Cristante into defence.
However, Milan doubled their lead when a corner was taken quickly, Simon Kjaer knocked down an Adli cross to the back post for Giroud to nod in from point-blank range. Cristante was furious, claiming he had been fouled, but he appeared to run into Pulisic.
Pulisic steered a shot wide from Leao’s cross-field pass and Davide Calabria drilled past the post, but Roma earned a penalty when Romelu Lukaku laid it off for substitute Lorenzo Pellegrini, caught by Calabria. Leandro Paredes smashed in from the spot.
Pellegrini’s free kick was deflected just off target by Giroud and another strike smothered by Maignan, but Milan restored their two-goal advantage with a well-worked goal.
Theo Hernandez surged forward, completed the give and go with a magnificent Giroud back-heel flick, and then cannoned the rocket of a finish off the underside of the crossbar.
Maignan scrambled across to fingertip the Pellegrini scorcher round the upright, as Roma refused to give in, but Yunus Musah almost added a fourth when thumping the near post at the end of a slalom through defenders.
Milan 3-1 Roma
Adli 11 (M), Giroud 56 (M), Paredes pen 69 (R), Theo Hernandez 84 (M)