Todd Hundley and Shawn Green also homered, and Tom Goodwin went 3-for-5 with a two-run single off Andy Ashby (8-9) for the Dodgers, who won for only the second time in eight games.
The win cut Atlanta's lead in the NL East to 1 1/2 games over the New York Mets, who beat San Francisco 2-0. It's the closest the Mets have been to the Braves since July 6 when Atlanta also held a 1 1/2-game lead.
Dreifort (10-7), who was 1-6 with a 6.94 ERA in his career previously against the Braves, needed 101 pitches to make it through five innings but got the win.
The only run off Dreifort came in the first inning when Rafael Furcal led off with a single and Andruw Jones reached first on an error by thirbaseman Adrian Beltre. Chipper Jones hit into a double play, and B.J. Surhoff tripled Furcal home.
Ashby held the Dodgers to only one hit through four innings before Goodwin's two-out, two-run single in the fifth gave Los Angeles a 2-1 lead.
Sheffield opened the sixth with his homer to center on an 0-2 pitch, and two outs later, Hundley hit his 19th home run into the right-field stands.
Ashby allowed four runs and six hits in six innings.
The Dodgers added a run in the seventh off Terry Mulholland on an RBI single by Shawn Green who also hit his 22nd home run, a two-run shot in the ninth, off Stan Belinda.
Mike Fetters gave up an RBI single to Keith Lockhart in the eighth.
©2000 The Associated Press. All Rights Reserved. This material may not be published, broadcast, rewritten, or redistributed