New Zealand were 187 for eight when bad light stopped play ten minutes after tea.
Steyn took two wickets and put opening batsman Craig Cumming in hospital in a fiery post-lunch spell to put South Africa on top after New Zealand had made their best start of the short series.
Cumming, who made 48, suffered a fractured cheekbone after missing an attempted hook.
New Zealand manager Lindsay Crocker said: "The x-rays showed what looked like multiple cracks in the cheek area. What that means in terms of how long he is going to be out (of the game) and what is needed to stabilise the injury has yet to be determined."
He was taken to hospital in Johannesburg, about 40km away, for assessment and treatment.
Crocker said it was likely Cumming would stay in hospital overnight and would probably take no further part in the match.
Former New Zealand captain Stephen Fleming, who was batting with Cumming when he was hit, said it was "pretty sickening". He said Cumming had been playing an important innings. "It's never nice to see anyone hit like that and I'm pretty sure the wishes of both teams are with him."
"It was a disappointing day," admitted Fleming, who made a fluent 43. "We just didn't get the job done."
South African bowling coach Vincent Barnes praised the South African bowlers but said the New Zealand batsmen had helped with their attacking approach.
"Their middle order play shots and they don't leave many balls alone. They give you a chance of getting wickets."
But Fleming said he didn't think the batsmen were positive enough. "There are opportunities to score with the fields that (South African captain) Graeme (Smith) is setting.
"The bowling is very good but at some point we have to be positive and put some pressure back on them. We attempted to do that and there were some good signs but once again we succumbed to some easy outs."
Fleming said that the pitch had some similarities to the surface at the Wanderers in Johannesburg, where South Africa won the first Test by 358 runs.
"I don't think it's totally true," said Fleming. "It was interesting to see the nature of the cracks as the day went on. They were turning up at the corners a bit. We were surprised to see the amount of inconsitent bounce."
Steyn, who took ten wickets and was man of the match when South Africa won the first Test in Johannesburg by 358 runs, had figures of four for 42 when play was stopped.
Cumming's injury was another blow for the Black Caps, who have already lost star fast bowler Shane Bond with an abdominal injury and all-rounder Jacob Oram with a hamstring strain.
Kyle Mills, who was due to replace Oram, pulled out Friday morning with a sore back and batsman Lou Vincent came in as a late replacement.
New Zealand reached lunch at 84 for one but ten balls after the interval Steyn made a breakthrough when Vincent mistimed a pull and popped up an easy catch to midwicket. Cumming and Vincent put on 62 for the second wicket, the best partnership for the tourists in the two Tests.
Cumming, who batted for 151 minutes and faced 107 balls, suffered his injury four overs later before Scott Styris played across a fast, full delivery from Steyn and was lbw.
Fleming, Ross Taylor and Brendon McCullum were all dismissed before tea, with McCullum falling to the last ball before the interval when he was caught at third slip off Andre Nel.
Steyn's pace overwhelmed tailenders Mark Gillespie and Iain O'Brien in the ten minutes of play possible after tea. Gillespie, playing in his first Test, lasted three balls before he was trapped in front. O'Brien slashed at the first ball he faced and was caught by Herschelle Gibbs at gully.
Steyn's chance of a hat-trick disappeared when he bowled a poor ball down the legside to Chris Martin. One ball later the umpires called off play.