Derry had three players sent-off in this Airtricity Premier Division defeat at the Showgrounds.
Eddie McCallion was given a straight red on 49 minutes for pulling down Raffaele Cretaro, with Eoin Doyle coverting the resulting penalty.
Kevin Deery was dimissed for two yellows and minutes later Sligo's Gavin Peers was also off after two bookings.
Doyle added another penalty and Alan Kirby netted before Emmett Friars was sent-off for two yellows.
Sligo created the better openings in a poor first half with Gerard Doherty making an early save from Matthew Blinkhorn.
Stephen McLaughlin went closest for City with a low shot into the side-netting.
Derry defender Shane McEleney hooked a Joseph N'Do effort off the line before Blinkhorn sliced wide from close range.
All the drama came in the second half, starting with McCallion's dismissal and Doyle putting Rovers ahead.
Deery's game ended with a a rash challenge after 51 minutes and Peers followed him down the tunnel four minutes later.
Doyle scored his second penalty on 81 minutes after David McDaid's handball and Kirby stabbed in the third with three minutes left.
A miserable afternoon for the Candystripes ended with Friars picking up a second yellow for a poor challange in the dying seconds.
Derry remain in second spot but they are now three points behind leaders Shamrock Rovers, who drew 1-1 at Dundalk earlier on Monday.