In this paper, we give a new upper bound on sizes of linear codes related to weight distributions of codes as follows. Let C be a linear [n, k, d](q) code, such that, between d and d(1+ 1/q-1)-1, the largest weight of codewords in C is the weight d(1+ 1/q-1)- 1- v, then k <= n- d(1+ 1/q-1)+ 2+ v. Some infinite families of linear codes with arbitrary minimum distances attaining this bound are constructed. This bound is stronger than the Singleton bound for linear codes. Hence we prove that there is no codeword of weights in the range [ qd/q-1 - v, qd/q-1 - 1] for a linear [n, k, d](q) code, if v = qd/q-1 + k - n - 2 >= 2. This is the first such kind of result, which concludes vanishing partial weight distributions from four parameters n, k, d and q. Then we give vanishing partial weight distribution results for many best known linear codes, some almost MDS codes, general small Griesmer defect codes, some BCH codes, and some cyclic codes. Upper bounds on the number of nonzero weights of binary Griesmer codes and some small Singleton defect codes are also given.