Usman Khawaja produced an unbeaten knock of 138 as Australia built a 48-run first-innings lead on day two of the third Test against South Africa.

The Pakistan-born left-hander led his side to 307 for six at stumps in Adelaide, aided by half-centuries from captain Steven Smith (59) and Test debutant Peter Handscomb (54).

Khawaja resumed at the crease with his side on 14 without loss following the tourists' declaration on 259 for nine but quickly lost partner Matt Renshaw for the gain of just five runs after a superb catch by Dean Elgar off the bowling of Kyle Abbott.

The same South African combination then dismissed David Warner (11) before Khawaja and Smith produced a third-wicket stand of 137 to steady the ship for the hosts.

After Smith was run out following poor communication between the batsmen, Handscomb took up the mantle to help edge his side ahead on a memorable Test bow before he was eventually clean bowled by Abbott.

It was a Test debut to forget for Handscomb's replacement though as 21-year-old Nic Maddinson was dismissed for a duck by Kagiso Rabada, and the wicket of Matthew Wade fell soon after when he edged Vernon Philander's delivery to Quinton de Kock.

The South Africans were making short shrift of the Australian middle order but their quick progress was temporarily halted when an lbw call on Mitchell Starc was overturned on appeal, with Philander's ball pitching just outside leg.

Starc, who had scored four at the time, made the most of his good fortune by slowing down the Proteas' attack and he will resume on 16 not out alongside the impressive Khawaja on day three.