This question already has an answer here:
How can I hide the positive contour labels covering the green area and only display the negative contour labels over the ocean areas? I am using QGIS 2.18.2. The contour file is a separate layer and when I enable labels I cannot hide the positive contours. Refer to the image below.