Celtic midfielder Olivier Ntcham’s second-half strike handed Steven Gerrard his first defeat as Rangers boss in his first Old Firm encounter.
The former Liverpool and England captain, who played under Hoops manager Brendan Rodgers at Anfield, had yet to lose in 12 games since taking over at Ibrox before the trip to Parkhead.
Gerrard, however, watched Celtic dominate the Ladbrokes Premiership encounter with James Forrest and Mikael Lustig hitting the woodwork and Gers keeper Allan McGregor tipping an Ntcham drive on to the crossbar before the French midfielder struck in the 62nd minute with a breakaway goal.
It was a deserved 1-0 win for the champions and it stretched Rodgers’ unbeaten record against Rangers to 12 games since he joined the Glasgow club in 2016.
Rodgers had lost Moussa Dembele to Lyon on transfer deadline day for a reported £20million but fellow French striker Odsonne Edouard returned along with Forrest and Tom Rogic.
It was nearly all change for the visitors since their last visit to Celtic Park, with skipper James Tavernier the only survivor.
Connor Goldson, Ovie Ejaria, Ryan Kent, Nikola Katic, Borna Barisic and Scott Arfield were playing for the first time in the fixture.
With only around 800 Rangers fans inside the 60,000-capacity stadium, a vastly-reduced away ticket allocation due to a tit-for-tat ticket row, there was a different dynamic to the atmosphere.
Hoops voices boomed down from the stands as Celtic took early control of the ball and refused to let go.
Celtic skipper Scott Brown picked up an early booking from referee Willie Collum for a foul on Kyle Lafferty and there was some controversy in the 25th minute when Rangers goalkeeper McGregor, after punching clear a Callum McGregor free-kick, appeared to kick out at Celtic defender Kristoffer Ajer who fell to the ground but play carried on.
McGregor then pushed an Ntcham free-kick past his near post for a corner which came to nothing.
Forrest smacked the bar in the 33rd minute with a deflected 30-yard drive and from the resultant corner Lustig’s header from a Dedryck Boyata flick-on also hit the bar with Rangers scrambling to clear their lines.
Collum was having a busy time, booking Edouard for foul on Ryan Jack before the French forward missed a great chance from Callum McGregor’s cross, heading straight at Allan McGregor who clawed the ball away for another corner which proved fruitless.
The home side started the second half as tenaciously as they had finished the first and in the 50th minute McGregor tipped a powerful long-range drive from Ntcham on to the bar before Celtic’s McGregor gave away a foul in his attempt to get to the rebound.
The corner count mounted for Rodgers’ men and the goal felt inevitable, although it came on a break in the 62nd minute driven by Rogic.
The Australian played in Edouard and his pass to Forrest was cut across for Ntcham, with the French playmaker knocking the ball into the net from 12 yards.
Griffiths replaced Edouard minutes later and his corner was met by Lustig who skimmed a header past the far post.
Rangers had to come out of their defensive shell and in a rare foray Alfredo Morelos’ angled drive was saved by Hoops goalkeeper Craig Gordon for a corner which was defended, before Lafferty headed a Tavernier cross past the far post.
Griffiths skimmed the outside of the post with a long-range effort and at the other end Tavernier flashed a shot wide, but there was no doubt the champions were well worth their win.