Crossover scaling from classical to nonclassical critical behaviour