MIAMI -- Nothing Miguel Cabrera does at the plate surprises the Florida Marlins.
"He's a hitting machine," manager Joe Girardi said Tuesday night after Cabrera drove in four runs and boosted his NL-leading batting average to .346 in a 5-3 victory over the San Francisco Giants.
"His approach is great," Girardi added. "As often as he hits, I'm never surprised because of his approach and because of how disciplined a hitter he is."
Cabrera hit a three-run homer in the third inning and an RBI double in the eighth, backing the solid pitching of Brian Moehler (3-4), who allowed two runs and six hits, struck out three and walked one in six innings.
Three relievers shut the Giants down over the last three innings, with Joe Borowski pitching the ninth for his sixth save in seven opportunities.
Cabrera went 2-for-4 and is 12-for-23 with three homers and 11 RBI during a seven-game hitting streak that matches his longest of the season. His double off reliever Kevin Correia was his NL-leading 21st.
"He was just born to hit. There's no other way to say it," Moehler said. "He's a great hitter. He's probably a little under the radar because we don't get a lot of press down here."
The Giants played without Barry Bonds, who sat out because of a sore back that could keep him out of the lineup again Wednesday, when manager Felipe Alou planned to rest the slugger anyway.
Lance Niekro homered twice for the Giants and went 3-for-4 after being activated from the disabled list earlier in the day. He singled his first time up and scored on Omar Vizquel's fourth triple of the season in the third inning.
Bonds was scratched after arriving at the ballpark and telling Alou he had some tightness in his back. Alou believed the soreness might be related to the cross-country flight the Giants took to South Florida after Bonds hit his 715th career homer in San Francisco on Sunday.
Alou already was planning to give Bonds Wednesday off. If he doesn't play in the series finale, the seven-time NL MVP will have three days of rest before the Giants begin a weekend series at New York on Friday.
With Bonds out, Mark Sweeney moved from first base to left field and Niekro was inserted into the lineup at first and batted eighth.
"He came in for Barry Bonds. That's why he hit two home runs," Alou joked.
The manager said the Giants are still dragging after making the long trip from California. He plans to tinker with the lineup Wednesday in an effort to give a couple of players some much-needed rest.
Niekro, who had not played since injuring his right shoulder on May 14, obviously is not one of them.
"You talk about fresh. That's a guy who was fresh," Alou said. "Not because he hit the homers. He just looked fresh out there."
The loss was the third straight for the Giants.
Moehler helped himself with an RBI single off Noah Lowry (1-3) in the third -- his first hit of the season in 17 at-bats. Dan Uggla singled one out later, giving the rookie a hit in 17 of his last 20 games, and Cabrera followed with his ninth homer for a 4-1 lead.
Niekro's third homer trimmed San Francisco's deficit to 4-2 in the fifth. The Giants wasted an opportunity to pull closer when Todd Greene popped out and Pedro Feliz grounded to third with two runners on in the sixth.
Niekro hit a solo homer in the ninth to cut Florida's lead to 5-3 but Borowski got pinch-hitter Jose Vizcaino to fly out to center field for the final out.
Lowry, who has lost three straight decisions, allowed four runs and five hits in six innings. He struck out four and walked none.
Cabrera has three four-RBI games this season. ... Moehler's RBI single was his fourth career hit in 87 at-bats. He also has four career RBI. ... Before sitting out Tuesday night, Bonds had started 17 of San Francisco's previous 19 games and 40 of 51 to start the season. ... To make room on the roster for Niekro, the Giants optioned 1B Travis Ishikawa to Double-A Connecticut. ... The Marlins activated reliever Franklyn German (right shoulder tendinitis) from the DL and optioned LHP Renyel Pinto to Triple-A Albuquerque.