The Brewers scored twice in the bottom of the first on an RBI groundout by Ryan Braun and a sacrifice fly by Prince Fielder, but the Cardinals cut that to 2-1 with a second-inning fly ball by Matt Holliday that just kept carrying until it dropped behind the wall in center.
Milwaukee extended its lead with an RBI single by Corey Hart in the bottom of that inning, but the Cardinals put up five runs in a huge fourth inning, capped by a three-run bomb by pitcher Jaime Garcia; it was the first home run of his career.
Garcia and Brewers starter Shaun Marcum were both gone by the seventh inning, which is when the ugliness started. Brewers reliever Takashi Saito hit Albert Pujols on the hand with a fastball (and Rafael Furcal scored on a double play later in the inning, tying the game).
The hit batsman was unintentional, and Pujols stayed in the game, although it looked, briefly, like he might be hurt. But the Cardinals' Jason Motte retaliated in the bottom of the seventh, throwing twice at Braun and hitting him the second time. Both teams were warned. Somehow, the benches did not clear and no one was ejected ... at least not for a couple more innings.
After that, no one scored for several innings despite lots of opportunities. The Brewers loaded the bases in the bottom of the seventh, for example, but Braun got thrown out at home on Jonathan Lucroy's fielder's choice. And then the Cardinals had the bags full in the top of the eighth, but Yadier Molina got gunned down at the plate.
The Cardinals finally scored in the 11th when Holliday singled off Estrada, stole second, and then came home on Berkman's bloop single. Octavio Dotel pitched the last two outs in the bottom of the inning to pick up the save.
With the victory, the Cardinals moved to within 2-1/2 games of the first-place Brewers.