DENVER -- Matt Holliday admittedly misjudged a first-inning fly ball that sailed over his head in left field for a double. The Cardinals slugger more than made up for it.
Holliday homered, doubled and drove in four runs, and Kyle Lohse persevered through an erratic outing to win his fifth consecutive decision and lift St. Louis over the Colorado Rockies 11-6 on Tuesday night.
"I screwed up that ball in the first inning," said Holliday, who ran in initially before backpedaling only to have Eric Young Jr.'s fly ball go over his head for a leadoff double that opened the door to two runs after the Cardinals had grabbed a 4-0 lead.
"(Second baseman) Skip (Schumaker) had a chance to make a play on the pitcher's base hit" in the sixth inning, Holliday added. "So, I think Kyle pitched better than the numbers said. But he's pitched great all season. We were finally able to give him a little bit of a cushion and get him a win."
Carlos Beltran and David Freese also homered, and Allen Craig went 3 for 3 with two walks and three RBIs to help the Cardinals rebound from consecutive losses. The Rockies dropped to 0-4 on their homestand and have lost seven of eight overall.
Lohse (11-2), who also beat the Rockies three weeks ago in St. Louis, gave up nine hits and five runs in six innings, breaking a string of 10 consecutive quality starts. He struck out five and walked two.
"I had to make a lot of pitches, a lot of tough ones, had a lot of guys on base," Lohse. "It was just one of those nights where balls were falling in. We had chances to get out of some innings. Things started happening.
"We've got to start playing better. It started tonight. We've got to tighten things up and get the job done," Lohse added.
He got more than enough offensive support, though, and the newly reinforced Cardinals bullpen pitched in with three innings of one-run ball. In a trade completed earlier Tuesday, St. Louis acquired right-handed reliever Edward Mujica from the Miami Marlins for minor league infielder Zack Cox.
Rockies starter Jeff Francis (3-3) went four innings, his second shortest outing since he lasted only 3 1-3 innings in his initial start on June 9 for the Rockies. He allowed six hits and five runs, struck out two and walked none.
Trailing 6-2 in the sixth, the Rockies pulled to within one on Josh Rutledge's three-run homer off Lohse.
Reliever Adam Ottovino got his first major league hit, a single, with two outs. Eric Young Jr. followed with a single to right, and Rutledge followed with a drive over the left field wall for his third homer of the season.
But the Cardinals came right back in the seventh to rebuild a four-run cushion. Craig drew a one-out walk, and Holliday, formerly of the Rockies, followed with a homer over the center field wall, his 19th shot of the year. One out later, Freese extended his hitting streak to 11 games by connecting for his 15th homer.
Craig singled for a third time in the eighth, scoring Skip Schumacher and pinch-hitter Matt Carpenter after they each singled and advanced on a sacrifice.
"They just keep coming at you," Rockies manager Jim Tracy said of the Cardinals. "They threw up five runs in the first two innings of the game. Bottom line is 11 runs, that's a big number."
St. Louis jumped to a 4-0 lead before Francis, who had been 6-1 in 11 previous outings against the Cardinals, recorded an out.
"A couple of tough mistakes to some good hitters," Francis said. "I hit the guy and Matt and Beltran hit some mistakes. I really felt good all day, but when guys take advantage of mistakes early in the game, it put us in a big hole."
Francis hit Daniel Descalso, the first batter he faced, and Craig followed with a single. Holliday scored them both with a double to the center field fence, and Beltran drove Francis' first offering deep into the left field bleachers for his 24th homer.
The Rockies answered in their half of the first. Young led off with a double that went over the head of Holliday in left field. One out later, Carlos Gonzalez brought him home with a single to left that extended his hitting streak at Coors Field to 29 games, one shy of Larry Walker's team record, set during the 2002 season.
Michael Cuddyer followed with a run-scoring double to center.
St. Louis added single runs in the second and sixth innings. Schumacher tripled and scored on Craig's single to right to put the Cardinals up 5-2, and St. Louis went up by four when Beltran doubled and scored on a single by Jon Jay.
Todd Helton had an RBI double for the Rockies in the ninth.
NOTES: Mujica is expected to join the Cardinals in time for Wednesday night's game against the Rockies. ... Rockies center fielder Dexter Fowler was a late scratch from the lineup after coming down with flu-like symptoms. Young replaced him in the lineup. ... Holliday is 10-for-19 with three home runs and 11 RBIs against Colorado this season. ... Rutledge and Jordan Pacheco each had three hits for the Rockies ... The Rockies' Drew Pomeranz (1-6) faces the Cardinals' Jake Westbrook (9-8) on Wednesday.