Colon (12-3), named Saturday to the American League all-star team, stymied the Pirates on one run over seven innings. The veteran right-hander issued just one walk and struck out five in the 108-pitch performance while lowering his ERA to 2.69.
Ryan Cook tossed a scoreless eighth and Grant Balfour converted his 23rd save of the season and a club-record 41st consecutive opportunity as American League West-leading Oakland took the opener of a three-game interleague series.
Josh Donaldson and Derek Norris each provided an RBI for the A's.
Pittsburgh's Jeff Locke (8-2) was hung with his first loss since his initial start of the season on April 7 -- a span of 16 starts. The left-hander yielded two runs on three hits over seven full frames.
Jose Tabata went 2-for-4 with an RBI for the Bucs, who fell 1/2-game behind St. Louis atop the NL Central with a third consecutive defeat.