VANCOUVER, British Columbia (AP) — Bo Horvat wanted to see three solid periods of play from his Vancouver Canucks teammates.

Instead, the center was frustrated as the Canucks dropped their third straight game, losing 5-4 to the Anaheim Ducks on Tuesday night.

"We had like a 30-minute lull again. And we can't be doing that. Our team's got to play a full 60 minutes," Horvat said.

The Canucks rallied from a 5-2 deficit late in the third period, but couldn't complete the comeback.

"We showed what we can do there in the last 10 minutes of the game," Horvat said. "We were all over them in their zone all the time. And we've got to play like that every single game, all the time, every shift, everybody."

Rookie Sam Steel recorded his first NHL hat trick to lead the Ducks. The 21-year-old Steel became the youngest player in Anaheim's franchise history to complete the feat in the regular season.

"It's pretty special to accomplish that, and to do it in a win is even better," Steel said.

Rickard Rakell and Kiefer Sherwood also scored for the Ducks.

Jake Virtanen, Alex Edler, Josh Leivo and Tanner Pearson scored for the Canucks.

Jacob Markstrom made 19 saves for Vancouver. Anaheim's John Gibson had 28 saves.

Despite the win, the Ducks were eliminated from playoffs contention after the Arizona Coyotes beat the Chicago Blackhawks on Tuesday.

The Ducks first goal of the game was the result of a bobbled offensive play by the Canucks.

Josh Teves had his shot blocked and his defensive partner Alex Biega fell trying to corral the puck.

Steel picked it up, beating Teves and Canucks rookie Elias Pettersson down the ice for a breakaway. He got a wrist shot past Markstrom to open the scoring 9:09 into the first period.

He added another goal 12:16 into the second, scoring off a rebound.

Steel completed the hat trick before the end of the second period.

Canucks center Markus Granlund was called for hitting a broken stick near the blue line that careened into the puck.

The rules say a penalty shot should be awarded if a player in his defensive zone throws or shoots a stick or any other piece at the puck or another player carrying the puck.

Steel's backhand shot sailed over Markstrom's glove. The 21-year-old was playing just his 18th NHL game.

"I didn't really try to move (the stick) where the puck was going. But he passed the puck at the same time," said Granlund. "I made a mistake there and obviously it cost us. It's tough."

The Ducks picked Steel 30th overall in the 2016 draft and he was called up from the American Hockey League on Saturday when center Ryan Getzlaf was scratched from Anaheim's lineup with an upper-body injury.

Virtanen put the Canucks on the board 12:48 into the first, grabbing the puck in the neutral zone and streaking up ice. He took a back-handed shot near the goal line. The puck hit the skate of Ducks defenseman Cam Fowler and slid through Gibson's legs.

Edler added another goal with just a minute to go in the first period, scoring on a shot from the point through traffic. The shot hit Anaheim's Corey Perry and bounced in past Gibson.

The goal was the 93rd of Edler's career, tying him with Mattias Ohlund for most goals by a defenseman in Canucks' history.

Rakell added a power-play goal for Anaheim 7:44 into the third after Teves was called for hooking.

Minutes later, Sherwood scored on a shot from the point.

Leivo brought the Canucks back within two 13:34 into the third period, scoring on a wrist shot over Gibson's glove.

Pearson swatted a puck through heavy traffic in front of the Anaheim net and beat a diving Gibson to add Vancouver's final goal with just over five minutes to go.

NOTES: Steel is the youngest player in Ducks history to score a hat trick in the regular season. ... Anaheim was playing without former Canucks center Ryan Kessler, who is listed as day-to-day with a hip injury. ... Teves made his NHL debut on Tuesday. The Canucks signed the 24-year-old Calgary native to a one-year deal earlier this month after he wrapped his senior season with the Princeton University Tigers.


Ducks: At Calgary on Friday.

Canucks: Host Los Angeles Kings on Thursday.

More From 1460 ESPN