Toronto forward Mitch Marner, who was a game-time decision, did not play and is day to day with a lower-body injury. Marner, who will represent Canada at the 4 Nations Face-Off, leads the Maple Leafs and is tied for fourth in NHL scoring with 70 points (16 goals, 54 assists).
"I thought we did a great job," Knies said. "Obviously he's a tremendous player and it's going to hurt our team he can't play, but I think guys stepped up and we did a really good job."
Matt Coronato, Yegor Sharangovich and Joel Farabee scored, and Dustin Wolf made 24 saves for the Flames (26-20-7), who have lost four of six.
"Just kind of a weird game," Farabee said. "I thought our power play looked good. Would've been nice to get a couple (penalty) kills there and keep the momentum going. Kind of was just a weird game altogether."
Coronato gave the Flames a 1-0 lead at 14:16. His initial rebound attempt was blocked by Chris Tanev, but he followed it up and shot over a downed Woll on a 5-on-3 power play.
Nylander, who will represent Sweden at the 4 Nations Face-Off, tied it 1-1 at 2:36 of the second period with a one-timer by Wolf's blocker on a cross-slot feed from Knies on the power play.
"I think we're just moving the puck, keeping it simple and keeping the puck moving quickly is huge and getting pucks to the net and retrieving and scoring," Nylander said.
Tavares, who had a goal disallowed in the first period after video review confirmed he knocked the puck in with a high stick, scored 41 seconds later to put Toronto up 2-1 with a backhand by Wolf's glove from the slot on another power play.