Buster Posey hit a two-run homer in the seventh inning through a thick mist hovering above the field, Tim Lincecum won his third straight decision, and the San Francisco Giants beat the Los Angeles Dodgers 4-0 on Wednesday night for their fifth straight victory. Brandon Crawford had an RBI single among his three hits and Angel Pagan backed Lincecum with his glove by stealing an extra-base hit from Yasmani Grandal with a great catch at the wall in center field in the seventh. San Francisco matched its season-high winning streak and pulled within 2 1/2 games of NL West-leading Los Angeles.