SAN FRANCISCO (AP) — Any questions about whether Alex Smith and the San Francisco 49ers could throw the ball around washed away with the rain against another overmatched NFC West opponent.
Smith threw for 267 yards and two touchdowns and the 49ers forced five turnovers to blow past the Arizona Cardinals 23-7 on a soggy Sunday at the Candlestick Park.
Smith tossed scores to Kyle Williams and Vernon Davis on the first two drives of the third quarter to help the 49ers pull away for their eighth straight victory. San Francisco (9-1) can clinch the NFC West with a win at Baltimore on Thursday and a loss by Seattle against Washington next weekend.
Patrick Willis, Donte Whitner and Dashon Goldson all intercepted passes by John Skelton. The quarterback for the Cardinals (3-7) lost for the first time in three starts this season in place of the injured Kevin Kolb.
The conditions turned out to be just perfect for San Francisco's style.
With a chilly rainstorm pelting the Bay Area since Saturday, the 49ers defense bullied and bruised Arizona all over a slick field. The Cardinals converted only two first downs in the first half and didn't make it past midfield until late in the third quarter.
Once the rain subsided and a rainbow formed on the north side of Candlestick, the 49ers finally opened up an otherwise passive passing game.
Smith connected with Williams on a route to the near pylon in the third quarter. Williams stretched over the goal line as he was tackled to complete the 8-yard TD catch.
After Skelton sailed a pass that Whitner stood under for an easy interception, Smith rallied San Francisco for another quick score.
He found Davis for an 18-yard touchdown to put San Francisco ahead 23-0. The tight end leaped over sideline cameramen and flexed his muscles to a rain-soaked crowd covered in ponchos and umbrellas in celebration.
Far too much for Arizona's anemic offense to overcome.
Skelton had won the previous two games against St. Louis and Philadelphia since replacing Kolb, who's out with a right foot and toe injury. Skelton was 6 of 19 for 99 yards and was benched after throwing his third interception — the last to Goldson over the middle on a pass intended for Larry Fitzgerald — in place of third-string quarterback Richard Bartel to start the fourth.
So much for that budding quarterback controversy.
Even Bartel's only highlight came on a shaky pass between two defenders that landed in Fitzgerald's hands for a 23-yard touchdown for Arizona's lone score. The Cardinals dropped their fifth straight to the 49ers.
About the only fight Arizona showed came in the fourth quarter when Early Doucet appeared to hit Goldson after the defensive back sacked Bartel. Goldson came up and threw two punches to Doucet's shoulder pads and facemask, getting a 15-yard personal foul penalty and an ejection.
The main fight was utter domination.
San Francisco outgained Arizona 431 to 229 yards of total offense. The 49ers also held the ball for more than 44 minutes and even got away with three missed field goals and a slowed-down running game.
Frank Gore started despite a right knee injury that knocked him out of a win over the New York Giants a week earlier, finishing with 88 yards rushing. He needs 61 more to pass the late Joe Perry (7,344) for San Francisco's career rushing mark.
The slick, sloppy surface at the start gave way to several slips.
David Akers had been one of the NFL's most reliable kickers — making 15 straight field goals — until a field flooded with water soaked his streak. He converted field goals from 43, 29 and 22 yards in the first half but had two kicks blocked and pulled another wide right.
Calais Campbell swatted the first attempt from 46 yards and Patrick Peterson blocked one from 30 yards. After Willis intercepted a pass by Skelton, the 49ers' offense stalled and Akers lost his footing and sent a 49-yard attempt wide right.
The defense again gave San Francisco a short field when Willis stripped the ball from Beanie Wells and the 49ers recovered. Wells was originally ruled down before the call was overturned on a challenge.
Braylon Edwards dropped a short pass in the end zone on third down and forced another 49ers kick. Later, Smith converted a fourth-and-2 from the Arizona 31 with an 11-yard completion to Williams, setting up a 29-yard field goal by Akers that gave San Francisco a 9-0 lead at the half.
The 49ers regained their rhythm in the second half and the one hiccup Smith showed came late.
He seemed to misread coverage and lofted a short pass that was intercepted in the end zone by Darryl Williams in the fourth quarter.
Smith completed 20 of 38 passes in one of his best games of the season. The only time he threw for more this season was when he had 291 yards in a win at Philadelphia.