ANAHEIM, Calif. (AP) Kole Calhoun and Albert Pujols homered in the first inning against John Danks, and the Los Angeles Angels held on to beat the Chicago White Sox 5-3 on Tuesday night.

Garrett Richards (12-9) was charged with three runs - two earned - and eight hits in seven-plus innings with four strikeouts and no walks. The right-hander retired Melky Cabrera on double-play grounders his first two times up, then struck him out in the sixth with the potential tying run at the plate.

Richards threw 25 of his 95 pitches in the sixth inning, when the White Sox closed to 4-2 with a two-out RBI double by Jose Abreu. But the Angels got a run-scoring infield hit in the seventh from Shane Victorino.

More from FoxSports

Richards left in the eighth after giving up two singles. Adam Eaton drove in a run with a fielder's choice grounder against Joe Smith, but Huston Street pitched a perfect ninth for his 29th save in 33 chances.

Danks (6-10) was charged with five runs - four earned - and five hits in seven innings, increasing his ERA to 4.61.

Danks, who held the Angels to one run through 7 1-3 innings in a no-decision at Chicago six days earlier, found himself trailing 3-0 after just 12 pitches.

The left-hander hit Victorino with his third delivery, then gave up Calhoun's career-high 18th homer on his next pitch and surrendered Pujols' 33rd homer and 553rd of his career one out later. Until Tuesday, no one on the Angels' active roster had ever homered against Danks.

Pujols tied Mike Trout for the team lead in home runs. They are trying to become the first set of teammates with at least 40 homers each since Jim Thome and Jermaine Dye of the 2006 White Sox.

The Angels added an unearned run in the fourth when Johnny Giavotella doubled with two outs and scored on a two-base throwing error by third baseman Tyler Saladino after Saladino backhanded Carlos Perez's grounder near the bag.

Kaleb Cowart, the Angels' No.1 draft pick in 2010, made his major league debut at third base and was 0 for 3. His contract was purchased from Triple-A Salt Lake earlier Tuesday when third baseman Conor Gillaspie was designated for assignment.

Cowart was the fifth player to start at third for manager Mike Scioscia since David Freese went on the disabled list on July 23 because of a fractured right index finger. Cowart began the season with Class-A Inland Empire before he was promoted to Triple-A on June 11.

UP NEXT

White Sox: RHP Jeff Samardzija (8-8) lost his last three starts against the Yankees, Royals and Cubs, surrendering 22 runs in 15 1-3 innings after posting consecutive road wins in which he pitched eight innings in each.

Angels: RHP Jered Weaver (4-9) will make his third start since coming off the DL. He is 0-5 with a 5.95 ERA over his last six outings, after going 4-0 with a 1.98 ERA in his previous five. In 12 career starts against the White Sox, he is 9-2 with a 2.15 ERA and five straight wins.