Elias Pettersson scored for the Canucks, who ended a two-game winning streak and are 2-4-1 in their last seven games.
The loss leaves the Canucks one point behind the Edmonton Oilers in the race for first place in the Pacific Division and one point ahead of the Vegas Golden Knights. The Ducks remain 11 points out of a playoff spot.
“We’re pretty good this season bouncing back from tough games,” said Henrique, who reached the 20-goal plateau for the fourth time in his career. “We knew we wanted to get back to basics, put the work boots on, even though it’s a tough place to come in and play. Overall it was a great performance by everybody throughout the lineup.”
Anaheim goaltender John Gibson made 37 saves. Vancouver’s Thatcher Demko stopped 23 shots.
Steel put Anaheim ahead 4-1 at 5:12 of the third with a shot through a crowd of players. Guhle padded the lead at 13:44, scoring his second of the season on a 2-on-1 with Grant.
The teams exchanged second-period goals.
Henrique scored his second of the game on a power play at 7:25. Troy Terry fed him a pass, and Henrique notched his 20th of the season with a hard shot from the face-off circle.
Pettersson cut into the lead at 11:00. He scored his team-leading 24th of the year with a shot from the top of the circle on a power play.
“It felt like we were always a step behind,” Pettersson said. “It felt like we were not there on the forecheck. They won most of the battles.”
Canucks defenseman Troy Stecher had a rough first period, helping the Ducks take a 2-0 lead.
On Anaheim’s opening goal at 5:38, Henrique flipped a puck in front of the net, where Stecher put his stick on the ice hoping to block it. Instead the puck hit the stick and deflected through Demko’s legs.
“We keep improving,” Henrique said. “We made some changes as of late and I think we’ve been doing a good job of simplifying and trying to attack.
“The game plan is more just attack, attack and attack. Get pucks there, get those second and third opportunities and tonight it paid off.”
Ryan Getzlaf made a nice play on Grant’s power-play goal at 12:22. He carried the puck behind the Canucks goal, then dropped a no-look pass to Grant who had a wide-open net.
Stecher was in the penalty box after being called for unsportsmanlike conduct for complaining to the referee over a hit Nick Ritchie had laid on him.
NOTES: Canucks F Brock Boeser missed his third game with an upper-body injury. … Vancouver F Tyler Motte returned to practice Saturday after missing seven games with an upper-body injury. … F Nicolas Deslauriers signed a two-year contract with Anaheim on Saturday. … To wrap up a week-long celebration surrounding the retiring of Daniel and Henrik Sedin’s numbers, the community work done by the Swedish Twins was recognized prior to the game.
Ducks: Play at St. Louis on Tuesday night.
Canucks: Host Minnesota on Wednesday night.
More AP NHL: https://apnews.com/NHL and https://twitter.com/AP_Sports