While the umpires planned to extend the day's play for nearly an hour to make up for the delay, bad light forced New Zealand to bowl to South Africa with their spinners on a Dunedin pitch that was offering variable bounce and turn.
Amla had contributed 23 runs and Elgar 12 to South Africa's 38 for one when the light was finally deemed insufficient, an overall lead of five runs. New Zealand had a 33-run first innings advantage when they were bowled out for 341 after tea.
Stephen Cook was the only South African batsman to fall when he was caught behind off Trent Boult in the first over. Although television replays showed he had not hit the ball, Cook did not review the decision.
Elgar and Amla took their side to 14 for one before the fire alarm sounded in the main stand, forcing the evacuation of the venue and leaving the players in a huddle in the middle of the pitch.
New Zealand had ground out their lead on the back of captain Kane Williamson's 16th Test century and a 13th half century for BJ Watling.
Williamson joined injured team mate Ross Taylor in second place on the all-time list for Test centuries for New Zealand behind Martin Crowe, who scored 17.
The hosts had been bogged down by South Africa's bowlers in the middle session after the Proteas took the second new ball.
Such was the tight line and length of the bowling, Mitchell Santner hit the fourth delivery he faced back over Kagiso Rabada's head for a boundary but was caught by Keshav Maharaj off Morne Morkel 38 balls later without adding to his score.
Williamson was also dismissed for 130 while Watling fell for 50 within 10 minutes of the tea break.
Taylor, who retired hurt late on day two with a torn calf muscle, returned to bat at 11 after tea to support Neil Wagner, who belted a run-a-ball 32 before the left-arm seamer became Maharaj's fifth victim.
308 & 38/1 in 18 overs (Amla 23*, Elgar 12*) lead New Zealand
341 in 114.3 overs (Williamson 130, Maharaj 5/94) by five runs