LM311 circuit not working
A zener diode needs some current (a few mA) trough it to 'drop' its designed volatge. 

If you want the + input to be the zener voltage below the positive rail, connect the resistor from the + input to ground.

If you want the + input to be the zener voltage above ground, connect the zener between + input and ground, and the resistor between + input and the positive rail.