The most likely cause is a bug in either your survey or your custom template.
Use the
Show Logic File feature to see if there are any errors.
The usual source of errors is custom JavaScript or JSON that does not have whitespace (space, tab, or newline) after each opening curly brace and before each closing curly brace. In such cases, Expression Manager treats the contents between the curly braces as an equation and tries to parse it, which will generate invalid JavaScript, which prevents questions from being hidden.
If that still doesn't fix your problem, feel free to open a bug ticket and attach the survey (and template if you're using a custom one) that shows the problem.