The Stars killed four of five Blues power-play opportunities, allowing one power-play goal late in the third period when defenseman John Klingberg was called for a four-minute high-sticking penalty with 4:18 remaining.
"If you're going to get in the playoffs, you can get in without your power play," Stars coach Ken Hitchcock said. "But you can't get in the playoffs without your penalty kill."
Brayden Schenn scored, and Jake Allen made 14 saves for the Blues, who have lost three in a row (0-2-1). Allen has lost 11 of his past 13 starts.
The Blues outshot the Stars 29-16 and came away frustrated after limiting a potent Stars offense in their building. It was the fewest shots allowed by St. Louis this season.
"No question. I thought we did a great job," Allen said. "We came into a tough building, it's a team that's playing well. I thought it was a good, solid game. Obviously beside the score, it was unfortunate. I know a lot of guys are frustrated in here because we played a good hockey game. We just couldn't catch a break."
For the 14th time this season the Blues scored one or fewer goals. They are 1-12-1 in those games.
"The effort was certainly there and I think puck-possession-wise we were doing a lot of good things, we generated some looks," Blues coach Mike Yeo said. "We hit some posts and we didn't finish, but we're not at the point where we should take too many positives from that. Those are things that we should do and we're capable of doing and now we've got to find a way to win these hockey games."
Janmark's power-play goal at 2:42 of the second period gave Dallas a 1-0 lead. His centering pass to Jason Spezza deflected into the net off Blues defenseman Carl Gunnarsson.
Johns' slap shot from the right half wall beat Allen short side after it deflected off the stick of Blues defenseman Alex Pietrangelo at 10:33 of the third period for a 2-0 lead.
Schenn's power-play goal at 18:46 with Allen pulled for an extra attacker made it 2-1.