CHICAGO – It was a combination seldom seen in what to this point has been a lost Yankees season.

Standout starting pitching and production throughout a lineup the Bombers thought before the year would be far more balanced than in 2015 but hadn’t been.

It came together on this night at least, contributing to a 9-0 victory over the White Sox in front of 20,773 at U.S. Cellular Field.

The Yankees (41-42), now 2-3 on this three-city, 10-game trip, had a season-high 20 hits and received 7 2⁄3 shutout innings from Masahiro Tanaka.

Brett Gardner, in a 3-for-18 slide coming in, led the way with four hits.

Carlos Beltran, named just before the contest to his ninth All-Star team, had three hits, as did Chase Headley, who homered.

Mark Teixeira, Starlin Castro, Rob Refsnyder and Austin Romine had two hits, with one of the latter’s hits a home run.

Tanaka allowed six hits and one walk in improving to 6-2 with a 3.12 ERA. He struck out six.

Overmatched White Sox lefthander Carlos Rodon allowed six runs (five earned) and 12 hits over five innings as he fell to 2-7 with a 4.50 ERA.

The Yankees, who scored at least one run in four straight innings (2-5), nearly made it five straight, stranding two in the first.

Beltran, who had hits in his first three at-bats, singled on the first pitch he saw from Rodon, and Alex Rodriguez, back in at DH as Beltran played rightfield, doubled on the second pitch of his at-bat, putting runners at second and third.

The double was the 547th of his career, tying him with Manny Ramirez for 29th all-time.

Teixeira, who became just the fifth switch-hitter to reach the 400-home run plateau Sunday, came next and sent a liner to second. Brett Lawrie dived to his right and had the ball bounce off his glove. Beltran hesitated, then took off for home and Lawrie’s throw beat him for the second out.

Castro worked a walk to load the bases and Headley struck out to end the inning.

After a 14-pitch bottom half of the first by Tanaka, the Yankees gave the righthander a lead he wouldn’t relinquish.

Refsnyder, starting at second, led off with a single. After fly outs by Aaron Hicks and Romine, Gardner singled. Beltran followed with his second hit of the day, which brought in Refsnyder to make it 1-0.

A-Rod grounded sharply to short where Tim Anderson failed to handle the ball cleanly, the error bringing in Gardner to make it 2-0.

Tanaka got out of a second-and-third-one-out jam in the bottom of the second – striking out Avisail Garcia and getting J.B. Shuck to fly out – and watched his offense tack on in the third.

Castro started the inning with a single and Headley came next, crushing a 1-and-0 pitch to left-center for his seventh homer of the season to make it 4-0.

Beltran doubled to lead off the fourth and scored on Teixeira’s one-out double for a 5-0 lead.

Romine’s solo homer with two outs in the fifth, his third of the season, made it 6-0. RBI doubles by Refsnyder and Hicks in the eighth made it 8-0.

Lefty Chasen Shreve, brought up from Triple-A Scranton/Wilkes-Barre earlier in the day, replaced Tanaka with one on and two outs in the eighth and struck out Jose Abreu on four pitches.