VANCOUVER -- J.T. Miller and Elias Pettersson each had a goal and an assist for the Vancouver Canucks in a 4-1 win against the Pittsburgh Penguins at Rogers Arena on Saturday.
Jake Virtanen and Brock Boeser scored, and Jacob Markstrom made 28 saves for the Canucks (18-15-4), who scored four goals on 14 shots.
"It's fun to be out there," Markstrom said of his season-high seventh straight start and second straight win. "Fun to play hockey, fun to play games, more fun when you're winning too, especially at home."
[WATCH: All Penguins vs. Canucks highlights]
Matt Murray made 10 saves in his first start in six games for the Penguins (21-11-4), who had their winning streak end at four games.
"It felt a little weird. It feels like forever since I played," Murray said. "I know the numbers don't back it up but I honestly didn't feel all that bad, especially considering how long it's been. I felt pretty smooth for the most part, timing felt good for the most part, just needed to make a couple more saves."
Video: PIT@VAN: Miller deflects home puck for PPG
Playing on consecutive nights, the Penguins didn't have a shot in the first period. It was the first time since the third period on Nov. 23, 2002 against the San Jose Sharks that Pittsburgh didn't record a shot in a period, and the fifth time the Canucks held an opponent without one.
"I just think we weren't quite ready for the intensity of the game," forward Bryan Rust said. "They're a team that can skate, they got a lot of skill, they move the puck fast, they skate fast. I think we were just a step behind there in the first."
Pittsburgh took three straight penalties in the first period, starting with Dominik Simon's double-minor for high sticking at 12:24, to give the Canucks an extended 5-on-3.
Miller scored at 14:45 but the Penguins challenged for offside 62 seconds earlier. The goal was overturned on video review and time was added back on. Virtanen made it 1-0 at 15:10 with a one-timer over Murray's glove from the left face-off dot. Miller scored before the third penalty expired with a deflection from the slot to make it 2-0 at 17:00 and end his season-long six-game goal drought.
Video: PIT@VAN: Virtanen buries one-timer for opening PPG
"When they disallowed it, I was like 'this is just not my month,'" Miller said. "Nice to see one go in."
Pittsburgh outshot the Canucks 20-6 in the second period.
"I don't know that I've ever been a part of a period like that. It was bizarre," Penguins coach Mike Sullivan said of the first period. "It's tough. We're using guys to try to kill those penalties, we're taking other guys out of the game because we can't get them on the ice. But I really liked our fight in the second and third."
Markstrom made a fully extended skate save on Jake Guentzel after a backdoor 2-on-1 pass from Evgeni Malkin at 9:00, but Guentzel scored at 15:28 on a rebound during a four-minute power play to cut the lead to 2-1.
Video: PIT@VAN: Markstrom denies Guentzel on the rush
"They came with the big pushback," Markstrom said. "We battled hard and came out in the third a little better and shut them down and got the win. That was huge."
Pettersson made it 3-1 at 16:12, reaching back for a rebound inside the right face-off circle and whipping it over Murray's shoulder while being knocked down.
"They came out really good in the second period, [Markstrom] made a lot of good saves," Pettersson said. "It was a really important goal and nice to score."
Pettersson set up Boeser for a one-timer from inside the right face-off dot to make it 4-1 at 14:31 of the third period.
Video: PIT@VAN: Boeser finishes off the feed from Pettersson
They said it
"It's a tough game to really assess because there weren't a lot of shots, there weren't a lot of scoring opportunities, but the ones they got were high quality and they converted, so it's not an easy one to evaluate. I don't think we should overthink it." -- Penguins coach Mike Sullivan on Matt Murray's play
"Both teams were obviously playing smart hockey, maybe a little safe, but every game is different. They had a really good second period, definitely dictated the play a little more, and I thought in the third period we did exactly what we needed to do, played in their end." -- Canucks forward J.T. Miller
Need to know
Sullivan coached his 500th NHL game, becoming the 13th active coach to reach the milestone. His record is 266-158-61, with 15 ties. … Guentzel has 10 points (three goals, seven assists) in his past eight games, and has at least a point in all eight career games against the Canucks (nine goals, five assists). … Malkin has nine points (three goals, six assists) in a six-game point streak. … Vancouver defenseman Tyler Myers had two assists and has 200 in his NHL career. … Pettersson has five goals in his past six games.
Penguins: At the Nashville Predators on Friday (8 p.m. ET; FS-TN, ATTSN-PT, NHL.TV)
Canucks: Host the Edmonton Oilers on Monday (10 p.m. ET; SNP, SNW, NHL.TV)
Video: Pettersson's two points lead Canucks past Penguins