Last updated on .From the section Scottish Premiership

St Johnstone came from behind to beat Rangers and win a league game at Ibrox for the first time since 1971.

Alfredo Morelos scored against the run of play to put the hosts in front early on.

Blair Alston quickly equalised for the visitors and Denny Johnstone headed Saints ahead just after the hour mark.

Josh Windass twice threatened to bring Rangers level before Graham Cummins netted Saints' third from the edge of the area.

Rangers had led Aberdeen on goal difference but now trail the second-placed Dons, who beat Hibernian earlier on Saturday, by three points, with Premiership leaders Celtic two points in front of Aberdeen.

Johnstone's header proved to be a big turning point in the game

St Johnstone overtake Motherwell into sixth place with a one-point advantage, Tommy Wright's side having emulated their 3-1 League Cup win away to Rangers in 2015.

Michael O'Halloran scored in that tie for Saints and joined Rangers later that season. He returned to Perth on loan at the start of this campaign and, as a result, was not available against his parent club.

However, the winger's absence did not prevent St Johnstone getting a foothold in the game at Ibrox, with Johnstone heading wide in the opening minutes.

Rangers responded and took the lead when Ryan Jack - available in between suspensions - set up Morelos to fire past Zander Clark and score his third goal in three games.

Rangers could not build on Morelos' early strike

It did not take St Johnstone long to level as Alston lashed home with a left-foot shot from 22 yards and broke his duck for the season, having done so at the same ground last term.

Stefan Scougall headed wide of the Rangers goal and Morelos had a shot saved in what was a tight first half.

It stayed that way until Liam Craig crossed for Johnstone to nod in his first goal for St Johnstone, having started ahead of Steven MacLean.

Rangers tried to re-assert themselves and Windass fired wide before heading his next effort over.

And Cummins' goal ended the game as a contest, the forward's drive coming seconds after he had replaced Johnstone.

Graham Cummins' goal wrapped up victory for St Johnstone at Ibrox