ClassContrast: Bridging the Spatial and Contextual Gaps for Node Representations