У меня есть элемент span в моем html
<span style="float: right;color: red; display: inline-block;" id="antcl_error"></span>
Но когда я проверил его видимость, тогда он говорит, что не видимо
$(document.body).find("#antcl_error").is(":visible");
Выше кода возвращает false, если пробел пуст
Поскольку пролет плавает и не имеет содержимого и не имеет ширины и высоты, он не потребляет места в документе, поэтому считается невидимым:
Вы можете проверить значение видимости CSS:
if($("#antcl_error").css('visibility') != "hidden") {
// visible
}
Согласно документации:
Элементы считаются видимыми, если они потребляют пространство в документе. Видимые элементы имеют ширину или высоту, которая больше нуля.
Элементы с видимостью: скрытые или непрозрачные: 0 считаются видимыми, так как они все еще потребляют пространство в макете.
Проверьте, нет ли режима отображения css:
if($('body').find("#antcl_error").css('display') != "none") {
alert('visible')
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<span style="float: right;color: red; display:inline-block;" id="antcl_error"></span>