Cardiff Blues climbed into third place in the Magners League table on a night when fly-half Dan Parks displayed his goal-kicking accuracy once again.
Parks accumulated 19 points from five penalties and two conversions as the Blues jumped above both the Ospreys and Ulster, continuing their bid for a prized play-off spot.
After this result, there is only a three-point gap between the Ospreys in fifth and second-placed Leinster.
Cardiff were hoping to blitz Benetton Treviso and bag a bonus point, but the Italians defended manfully and the hosts had to settle for a penalty try and a second half effort from number 8 Xavier Rush.
Treviso, who beat Glasgow Warriors last time out, took an early lead through the boot of Willem de Waal, who combined once again with Fabio Semenzato at half-back.
The South African out-half landed three penalties in all, but Franco Smith's well-drilled side never really looked like ending their winless run away from home in the league.
They were punished for their ill-discipline with yellow cards for forwards Alessandro Zanni and Michele Rizzo in the first half, and another for Robert Barbieri in the final minutes.
In the third minute, de Waal opened the scoring with a penalty following some good attacking movement from Treviso in the Blues' 22.
Parks settled Cardiff with two penalties in reply and full-back Chris Czekaj sparked a promising break which saw Leigh Halfpenny, Martyn Williams, Bradley Davies and Taufa'ao Filise get their hands on the ball.
Another kickable penalty was awarded in the tenth minute and Parks obliged, only for de Waal to cut the gap to 9-6 on the quarter hour mark.
Centre Casey Laulala, who touched down against Connacht last weekend, threatened to open up the Treviso defence with some neat footwork and clever passing.
Cardiff were beginning to put together some good phases and a grubber kick from Parks almost resulted in a try for Tom James. The winger managed to gather the ball brilliantly and dive over, but he was called back for a foot in touch.
Treviso's forwards carried well when they won back some territory and de Waal provided a solid platform for his busy back-line, of which Ezio Galon and Tommaso Benvenuti stood out.
Parks knocked over his fourth penalty, punishing the sin-binned Zanni for coming in at the side of a ruck. Treviso, whose scrum was coming under increased pressure, then lost replacement prop Rizzo following a ruck offence ten metres out from his try-line.
Briefly, the visitors were down to 13 men and the Blues used their advantage in the scrum to force a penalty try in the 35th minute, with Parks adding the extras.
de Waal responded with a late penalty, making it 19-9 for half-time, and in a game that lacked intensity at times, Cardiff were guilty of a number of errors.
Parks maintained his 100% record with a 52nd minute penalty, however it was tries the Cardiff crowd craved and they were not forthcoming.
Jamie Roberts, who kept the Treviso defenders busy, threatened on one or two occasions. The powerful centre had to move out to the wing to cover for Halfpenny, who was forced off with an early injury.
Roberts found a gap in the defence and passed for Rush to bound forward. But the move petered out and Treviso enjoyed their best spell of possession shortly afterwards.
Their purple patch came to nothing though and after a flood of substitutions, a rolling maul got Rush over for the Blues' second try.
Parks kicked a penalty to the corner, the lineout was won by replacement lock Deiniol Jones and the Cardiff pack did the rest, helping the big New Zealander crash through for his first league try since September.
Italian international Barbieri became the third Treviso player to be sin-binned when he was sent to the touchline in the 79th minute, but the hosts were unable to get near that bonus point.
After their third league win on the trot, Cardiff now face into two away games against Welsh rivals, the Newport Gwent Dragons and the Scarlets.
They will have to rediscover their 'creative flair' for those crucial clashes, which was something director of rugby David Young felt they lacked against Treviso.