A penalty try and the boot of fly-half Alberto Di Bernardo, who kicked 16 points, also allowed the Italian outfit to keep themselves above the Blues in the RaboDirect PRO12 table.
Dafydd Hewitt and Lou Reed got themselves on the scoresheet for Cardiff, with Ceri Sweeney clocking up seven points, but it wasn't enough to halt a run which now consists of just one league win in their last five outings.
The Blues were first on the scoresheet when Sweeney notched a 12th-minute penalty but they were behind when Zanni went over just 60 seconds later.
The flanker did well to avoid contact and swivelled his way into the corner with Di Bernardo adding the conversion.
But Cardiff fought their way back into the game and shortly before the half-hour mark centre Hewitt crossed, despite the challenge of Treviso's Brendan Williams. Sweeney added the extras for a 10-7 lead.
Treviso almost hit back immediately, but Ludovico Nitoglia fumbled unopposed just metres from the line when attempting to collect Manoa Vosawai's inside pass.
The hosts did level the scores five minutes before the break though. Di Bernardo opted to go for the posts from a penalty and justified his decision with a sweetly-struck effort.
And the fly-half edged his side 13-10 in front with another three-pointer with his second penalty of the evening - the last act of the first half.
The second half took a while to get going but Cardiff retook the lead on 49 minutes when Reed barged his way over from close range.
The lock, on as a replacement just five minutes previously, was the grateful receiver of a loose lineout from Marc Breeze but still found his way to the line.
Di Bernardo had the chance to reduce the Italian side's arrears moments later with a penalty but skewed his effort wide.
However lock Michael Paterson's yellow card allowed the hosts a route back into the game, and Treviso took full advantage in the scrum when they were awarded a penalty try on 58 minutes when the Blues deliberately brought it down.
Di Bernardo did the honours from under the posts to swing the pendulum back in his side's favour at 20-17 and then opened up a six-point gap with 13 minutes remaining with a long-range penalty.
Scott Andrews summed up Cardiff's night with another yellow card, and while Di Bernardo missed that chance to finish the game off, he made no mistake moments later and secured an historic 26-17 victory.
|Benetton Treviso Score Card|
|Alberto di Bernardo||2||4||16|
|Cardiff Blues Score Card|