SEATTLE -- Things are going so well for the Chicago White Sox this season that they have even won an American League road series on the West Coast for the first time in five seasons.
"Our focus is to get out and win series," Jermaine Dye said after hitting a two-run homer and helping lead the White Sox to a 4-3 victory over the Seattle Mariners on Saturday night.
With Jose Contreras pitching into the eighth inning, the AL Central-leading White Sox won their fourth in a row and beat the last-place Mariners for the sixth time in eight games this season. The Mariners fell to a season-worst 20 games under .500.
The White Sox had not won a road series against the Mariners, Angels or Athletics since Aug. 28-30, 2000, in Oakland. The White Sox are 16-48 in those series since 2001.
"When you win, it never gets old," Chicago manager Ozzie Guillen said.
Contreras (9-7) won his second straight start and has won four of his last five decisions. Making his first career start against the Mariners, Contreras took a one-hit shutout into the seventh, when the Mariners scored twice.
Seattle scored again and nearly tied it in the eighth, but Ichiro Suzuki was thrown out at the plate on Richie Sexson's double. Right fielder Dye threw to second baseman Tadahito Iguchi, who threw to catcher A.J. Pierzynski to just get Suzuki, who had walked.
Seattle manager Mike Hargrove argued the call by plate umpire Bob Davidson, but Suzuki didn't.
"I thought it was a close play," Suzuki said through a translator. "I'll leave it up to the umpire to call."
Said Hargrove of Davidson's call: "It looked to me like he was wrong, but he won."
Guillen didn't see it that way, of course.
"He was out," Guillen said. "When you execute well, you finish up well."
Contreras gave up three runs and five hits in seven-plus innings, with no walks and seven strikeouts. The White Sox took him out after he gave up a single to Jamal Strong to lead off the Seattle eighth.
"I'm being aggressive and throwing strikes," Contreras said through a translator. "Finally, it's coming together."
With closer Dustin Hermanson unavailable because of a sore lower back, Damaso Marte got Yuniesky Betancourt to hit into a double play with two men on in the ninth for his fourth save.
Dye tied his career high in hits by going 4-for-4 with a pair of doubles and a single along with his 23rd homer. He gave the White Sox a 2-0 lead in the second with his drive into Seattle's bullpen in left field after a single by Pierzynski. It came off Joel Pineiro (5-9).
Dye also had two stolen bases, his ninth and 10th of the season to give him a career high.
Signed as a free agent in December for $4 million this season after spending four years with Oakland, Dye is happy he's producing for a first-place club as the season winds down.
"It feels good," he said. "Any time you're in the middle of the lineup, you're counted on to drive in runs."
Juan Uribe had an RBI single in the fourth for the White Sox's third run. Carl Everett hit his 20th homer in the seventh off Matt Thornton to put Chicago ahead 4-0.
Greg Dobbs spoiled Contreras' shutout bid in the seventh with a two-run single.
Pineiro went six innings, allowing three runs on seven hits and two walks, with three strikeouts. Dye homered and doubled twice against Pineiro.
"I kept trying to make my pitches, but I kept elevating the ball," Pineiro said. "That's his sweet spot."
Dye had four hits in a game for the eighth time in his career. His two stolen bases, both in the eighth inning, were the first time in his career that he's had two stolen bases in a game. He has nine hits in his last 15 at-bats. ... Chicago won a series against San Diego in June. ... The White Sox's Timo Perez hit into a rare fielder's choice in the fourth when right fielder Suzuki threw out Uribe at second. Perez's line drive fell in front of Suzuki with Geoff Blum at second and Uribe at first. ... Pineiro has an 8.49 ERA in his last two starts, both losses. ... Suzuki was 0-for-3, with a walk, dropping his batting average to .298, his lowest since July 1, when he was hitting .298.