Rohit Sharma scored a dazzling 161 to propel India to a healthy score in front of returning fans as England's bowlers hit back late on the opening day of the second Test on Saturday.
India reached 300 for six at stumps after electing to bat first in Chennai.
Rishabh Pant, on 33, and Axar Patel, on five, were batting at close of play.
Spinners Jack Leach and Moeen Ali claimed two wickets each on a pitch that offered turn. Ali bowled skipper Virat Kohli for nought to put India in trouble at 86-3.
Sharma and Ajinkya Rahane, who made 67, put together a fourth-wicket stand of 162 to raise the noise of cheering fans who had been allowed into the ground for the first time since the pandemic.
The opener hit his seventh Test century — and first against England — and crossed 150 in his 36th five-day match to a standing ovation from the ecstatic crowd.
But Leach broke through with his left-arm spin to send Sharma trudging back to the pavilion in the final session after the batsman holed out a catch to deep square leg.
Sharma, who survived a tight stumping chance — given not out by the TV umpire — off Leach on 159, hit 18 fours and two sixes in his 231-ball stay.
Rahane, who hit form after scores of one and nought in the first Test, soon fell to Ali, bowled on another good delivery by the off-spinner. India lost three wickets in the final session.
Skipper Joe Root chipped in with his off spin to get Ravichandran Ashwin caught at short leg by Ollie Pope.
Earlier, Olly Stone had Shubman Gill leg before for a duck in only the second over of the day, but Sharma and Cheteshwar Pujara steadied the ship with an 85-run second-wicket stand.
But then Leach took Pujara for 21 and Ali's prized scalp of Kohli left India 106 for three at lunch.
Ali bowled Kohli through the gate as the Indian captain stood shocked for a few moments while the TV umpire checked to see if the bail had been dislodged by the wicketkeeper's gloves, before walking off to stunned silence.
The Indian players were greeted by whistles and chants of “Rohit, Rohit” as Indian cricket welcomed back a limited number of its raucous fanbase for the match. After the opening Test was played behind closed doors, 15,000 fans were allowed back in the stadium, and Rohit gave them plenty to cheer about.
England made four changes from their opening win with Stuart Broad, Ali, Stone and wicketkeeper Ben Foakes making it into the side.
India handed left-arm spinner Axar Patel his Test debut and brought in paceman Mohammed Siraj and left-arm wrist spinner Kuldeep Yadav into the team.