Taking steroids isn't going make it easier to make solid contact with the ball, but being buffer allows you to drive the ball farther. Balls that used to be pop-ups become home runs and balls that used to be infield line drives become doubles.
If steriods didn't make a difference, why do they even bother taking them? To look good? If being stronger in general doesn't help being a slugger, why do players spend so much time in the weight room now?
Not to mention the fact that steriods don't just help you build muscle but also help you recover more quickly: something that is very crucial in keeping up your batting average and slugging in the summer months.
Why would bad pitching be the root cause? The population in both the United States and in other baseball nations have increased significantly. The pool of quality pitchers has grown along with expansion. I don't see why the quality of hitters would increase but the quality of pitchers wouldn't. You could argue that bad pitching has helped not everyone, but the elite hitters, but that doesn't explain the random increases in powers coming from players like Brady Anderson in recent years.
I can buy that pitching and smaller ballparks have contributed to the situation, but the sole cause? C'mon.