Вы проверяете атрибут visibility
в элементе, но на самом деле он находится на объекте style
- но вы можете быть удивлены результатами, даже если вы сделаете element.style.visibility
, так как это не всегда даст вам правильный результат(в вашем случае так и будет, потому что вы устанавливаете встроенные стили, что в любом случае является плохой практикой)
Давайте предположим, что вы установили свой стиль CSS для элемента следующим образом:
#user { visibility: hidden; }
Затем вы проверилиit:
alert(document.getElementById('user').style.visibility);
Он будет содержать пустую строку ""
- вместо этого вам в идеале следует использовать getComputedStyle
, чтобы фактически получить, какие стили IN USE.