England were 121 for three at tea after being sent in to bat.
Compton (40 not out) and Taylor (41 not out) came together with England on 49 for three and added 72 without being parted.
Fast bowler Dale Steyn dismissed English opening batsmen Alastair Cook and Alex Hales cheaply, while off-spinner Dane Piedt took the wicket of Joe Root for 24 with his first ball of the match.
Steyn, who had not played any cricket since suffering a groin injury on the first day of a series in India on November 5, found his rhythm almost immediately and had Cook caught at second slip by Dean Elgar for a duck off the fifth ball of his second over.
Also Read
He did not concede a run in the 3.1 overs he bowled before lunch.
England new cap Alex Hales got off the mark with a clip to leg for two off the first ball he faced from Kyle Abbott and looked comfortable at the crease, although the only ball he faced against Steyn during the morning was the last delivery before the rain.
Root looked busy at the crease and made 24 off 37 balls, including a pulled six off Abbott. But he went back on his stumps when Piedt came into the attack and was trapped leg before wicket by a ball which spun back at him.
He asked for a review of umpire Aleem Dar's decision but replays showed the ball would have clipped the top of his stumps.
The breakthrough achieved, South African captain Amla took Piedt off and brought back Steyn. But Taylor looked confident from the start of his innings, reaching 41 off 69 balls by tea, while Compton defended solidly in a 104-ball innings.