At least Nolasco can say his monthlong losing streak is over.
"I don't know if it's the cool weather, the thick air, I have no idea," Nolasco said of his dominance out West. "I'm just trying to give my team a chance to win every time out. I guess it just happens out here for some reason."
Nolasco (4-5) overcame a shaky start for his first win since May 24, and that came across the bay against San Francisco. He struck out three and walked two for his fifth career complete game.
The homers by Ramirez and Morrison off starter Guillermo Moscoso (2-4) were the first by Florida in eight days. The Marlins improved to 4-23 in June, by far the worst month in franchise history.
Oakland was held scoreless for the ninth time this season and second in four games.
"Some of these guys need to find out they can go nine innings," Marlins interim manager Jack McKeon said. "That should be the goal of every pitcher on every club to go nine, and unfortunately we don't let them."
The offensive power came after McKeon's unusual team meeting.
The 80-year-old turned the clubhouse into a classroom for about 15 minutes before batting practice, even using a bat as a prop while he delivered his speech to hitters. He made his players chuckle with tales about former A's owner Charles Finley when McKeon managed Oakland from 1977-78 and gave more instruction than motivation.
"We had an educational meeting," McKeon said. "It wasn't one of my usual, 'Go get 'em, babies.' It was educational, how we've got to go about it."
Whatever the reason, the Marlins finally started to swing the bats.
Ramirez's drive in the first inning landed over the 400-foot sign in straightaway center field for his first home run since May 21. It was his fifth of the year and it put Florida ahead 2-0. Morrison added a solo shot to right in the fourth to give the Marlins a three-run lead.
Moscoso struck out a season-high eight and gave up four hits in six innings. But his otherwise solid performance was washed away by those two pitches.
"It was a mistake," Moscoso said. "I was making the right pitches tonight. I was commanding my zone very well. I didn't command my zone very well the last couple starts."
Florida backed Nolasco with some splendid defense.
Mike Stanton made a running catch of Cliff Pennington's soaring shot up against the wall in right field just as his glove slammed into the padding. Second baseman Omar Infante hopped over a broken bat to field a ground ball by Hideki Matsui in the third.
The closest the A's came to touching Nolasco came early.
Oakland never mounted another serious threat.
"It is frustrating," A's catcher Kurt Suzuki said. "When you're not getting the results you want, it can wear on you."
An MRI on Marlins ace Josh Johnson showed no structural damage in his ailing right shoulder. He received a cortisone shot and won't throw for at least 10 days. He is expected to rejoin the team sometime after the All-Star break. ... Oakland RHP Tyson Ross (strained left side) will pitch a rehab assignment for Triple-A Sacramento on Thursday. ... Pennington snapped an 0-for-23 skid with a single in the first inning. ... Oakland RHP Brandon McCarthy allowed one unearned run and struck out four in six innings in a rehab start for Class-A Stockton.