ST. PETERSBURG, Fla. -- Brandon Belt got the previous three games off in Philadelphia for a mental break and to work on his swing, and the first results were outstanding.
"He looked great," Giants manager Bruce Bochy said. "We talked in Philly, and he's all in with trying to make a couple adjustments. It's not easy to do it for a day, so give three days to work on it. It was good for him."
Belt has loosened the grip on the bat and is positioned deeper in the batter's box. He called Friday's success a 60-40 split, with the higher percentage being for the batting work.
"I think mentally I've stayed in there pretty well," said Belt, who been mired a 1-for-19 slide. "There's just some things that I need to work on to tap into my ability a little more."
Madison Bumgarner struck out 11 in seven innings and Brandon Crawford hit a two-run homer for San Francisco, which was won three straight. The defending World Series champions are 10 games under .500.
This was the first time since 2004 that the teams met.
Tampa Bay has lost two in a row, including its first game in August. The Rays went 21-5 in July.
Bumgarner (11-7) gave up one run, working around seven hits and three walks. He tied his season high for strikeouts.
Bumgarner's current nine-start stretch of allowing two earned runs or less and pitching at least seven innings is the second-longest in franchise history since records are available, behind the New York Giants' Ferdie Schupp's 12 in 1916-17.
"Any time you're able to battle through when you don't necessarily have the command you're used to having, it makes it a tougher kind of battle," Bumgarner said. "You're going to have games like that."
Sergio Romo got two outs for his 26th save.
After Belt hit an RBI triple in the seventh against Chris Archer (6-4), Crawford followed with his home run for a 4-1 lead.
Archer allowed four runs and seven hits in seven innings. He had permitted just two runs -- one earned -- over 31 innings in winning his previous four starts.
Belt got the Giants' first two hits off Archer. He singled in the third and tied it at 1 with his homer in the fifth, which stopped a career-high stretch of 18 shutout innings for Archer.
"Everything I threw, Belt saw," Archer said. "A fastball down and he kind of crushed it. Fastball first pitch, he went the other way for a base hit. So I figured I'll try a changeup, mix it up, but he saw that well, too (for the homer)."
Ben Zobrist put the Rays ahead 1-0 with an RBI single in the third. Bumgarner, who had a 16-inning scoreless streak end, avoided a big inning by getting an inning-ending pop fly from Sean Rodriguez with the bases loaded.
"Just a tough competitor," Bochy said. "Going seven innings, one run, shows you how good he is. He was without his good command tonight."
Struggling Giants LHP Barry Zito will not make his next scheduled start Sunday and will be replaced by RHP Guillermo Moscoso. ... Rays RHP Alex Cobb, hit in the head by a liner in June, is scheduled to pitch Saturday for Class A Charlotte. His first rehab start lasted just two pitches due to a blister. ... Tampa Bay LHP David Price (6-5) and San Francisco RHP Tim Lincecum (5-11) are Saturday night's scheduled starters. It will be just the second game in Rays' history featuring former Cy Young Award winners. Price faced Toronto RHP R.A. Dickey on May 9. ... With Price pitching, the left-handed hitting Belt could be out of the lineup.