STANFORD, Calif. -- The Stanford Cardinal and running back Christian McCaffrey picked up Saturday night where they left off last season when they beat USC in the Pac-12 Championship Game.

McCaffrey had 260 all-purpose yards and No. 7 ranked Stanford opened Pac-12 play with a 27-10 victory against the Trojans at Stanford Stadium.

McCaffrey rushed for 165 yards and a touchdown on 30 carries and caught four passes for 73 yards and a 56-yard score against a Trojan defense that was geared to stop him.

"It definitely gives me some satisfaction," McCaffrey said. "But then again, I'm satisfied with the win and how our guys played and kept progressing. Even though we won, there's a lot of stuff we got to fix."

Stanford (2-0, 1-0 Pac-12) defeated USC for the third straight time, including a 41-22 victory in the championship game at Levi's Stadium in Santa Clara. McCaffrey had 461 all-purpose yards in the title game. He ran for a touchdown, caught a touchdown pass and threw a scoring pass. McCaffrey had 249 all-purpose yards in Stanford's 41-31 regular-season victory over USC last year in Los Angeles.

"They wanted to key on him," Stanford wide receiver Michael Rector said. "It's awesome to see him have a great game again. It's just a testament to all the work he puts in, how well he plays on Saturdays."

Rector scored on a 56-yard run in the third quarter for the Cardinal, and quarterback Ryan Burns completed 9 of 15 passes for 109 yards and a score with one interception in his second career start. Running back Bryce Love, who missed Stanford's season-opener against Kansas State with a lower leg injury, rushed for 54 yards on 11 carries.

Quarterback Max Browne threw for 191 yards, completing 18 of 28 throws for USC (1-2, 0-1). Wide receiver Steve Mitchell caught five passes for 55 yards, while tight end Tyler Petite had three catches for 73 yards. Ronald Jones rushed for 63 yards and a touchdown on 11 carries. Justin Davis gained 63 yards on 14 carries.

"We did a lot of great thing," Browne said. "We moved the ball. We stabbed ourselves in the foot. We have to score touchdowns. We have to correct those early penalties."

USC had seven of its eight penalties in the first half -- five of those for false starts.

USC took the second-half opening kick and drove 75 yards in nine plays for a touchdown, cutting Stanford's lead to 17-10 on Jones' 1-yard blast with 11:24 left in the third quarter.

Stanford responded with Conrad Ukropina's 42-yard field goal to make it 20-10 with 5:44 remaining in the third. The Cardinal forced a quick punt then needed only two plays to strike again.

On second-and-four, Rector scored on a 56-yard end around. Burns faked a handoff to McCaffrey, who ran off right tackle, drawing USC's defense his way. Rector sprinted around left end and was barely touched on his way to the end zone, giving Stanford a 27-10 lead.

"We saw they had done a lot of corner blitzes, a lot of safety blitzes when we were running the run play on that," Rector said. "We thought if we could fake that, we could run it around the end and catch them sleeping."

Stanford built a 17-3 halftime advantage as McCaffrey carried 20 times for 101 yards and a touchdown and caught three passes for 72 yards and a score.

The Cardinal grabbed a 7-0 lead with 4:18 left in the first quarter on Burns' 56-yard touchdown pass to McCaffrey, who made USC pay for a coverage breakdown.

As McCaffrey circled out of the backfield and sprinted down the left sideline, no Trojan defender followed him. Burns hit him in stride at the 30, and McCaffrey raced into the end zone untouched, capping a seven-play, 80-yard drive.

"We gave them a couple big plays, one on the wheel route," USC coach Clay Helton said. "That's a guy with eyes in the backfield. He sees play action and his responsibility was in the flat. Christian ran by and made a great play."

USC cut Stanford's lead to 7-3 when kicker Matt Boermeester connected from 47 yards with 26 seconds left in the first quarter.

Ukropina drilled a 31-yard field goal with 9:31 left in the half, extending Stanford's lead to 10-3. After forcing a USC punt, the Cardinal marched 57 yards in eight plays for McCaffrey's 1-yard touchdown leap on fourth-and-goal with 2:11 on the clock.

The Trojans stopped a leaping McCaffrey for no gain on third-and-goal from the 1. But Stanford, using its jumbo package with extra offensive linemen, gave the ball to McCaffrey for the seventh straight time on the drive, and he scored his second TD of the night.

Stanford's eight-play, 57-yard touchdown drive was all on the ground, including a 33-yard burst by McCaffrey, who continued racking up huge yards against the Trojans.

NOTES: Trojans DT Noah Jefferson missed the game with a shoulder injury. C Toa Lobendahn (knee) and S John Plattenberg (concussion) were also out. ... USC LT Chad Wheeler started in place of Chuma Edoga, who was demoted after being ejected from last week's game against Utah State for making contact with a referee. ... Stanford DT Harrison Phillips was out with a knee injury. Jordan Watkins replaced him, making his first career start. ... USC RB Ronald Jones, who missed most of the Utah State game with a rib injury, played against Stanford.