Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 隐藏具有“显示”属性或“左/上”属性的元素?_Javascript_Jquery_Css - Fatal编程技术网

Javascript 隐藏具有“显示”属性或“左/上”属性的元素?

Javascript 隐藏具有“显示”属性或“左/上”属性的元素?,javascript,jquery,css,Javascript,Jquery,Css,我见过许多插件/库,包括jquerymobile,为了隐藏 元素更改其左侧和/或顶部属性,例如: div { left : 99999px; top : 99999px; } 现在,这种情况下,我的代码多次混乱,因为它并不总是消失,有时会增加该属性的滚动条,所以我发现自己编辑了几个插件和css,使用display:none 我一直在想,也许人们选择这样做而不是切换显示属性是有原因的,或者这只是上述开发人员的不良做法 这两种方法的性能有什么不同吗?是否有任何javascript代码不

我见过许多插件/库,包括jquerymobile,为了隐藏 元素更改其左侧和/或顶部属性,例如:

div {
   left : 99999px;
   top : 99999px;
}
现在,这种情况下,我的代码多次混乱,因为它并不总是消失,有时会增加该属性的滚动条,所以我发现自己编辑了几个插件和css,使用
display:none

我一直在想,也许人们选择这样做而不是切换显示属性是有原因的,或者这只是上述开发人员的不良做法

这两种方法的性能有什么不同吗?是否有任何javascript代码不能在隐藏元素上运行?更好的方法是什么?

TLDR;:屏幕阅读器

以下是使图元不可见的不同方法:

  • 显示:无将元素从流中取出。文档被呈现为元素不存在。因此,屏幕阅读器不会发出元素的声音

  • 然后您就有了
    可见性:hidden
    ,它使框不可见,但仍会影响布局

  • 最后,您还有一些技巧,比如使用偏移量进行绝对定位,使元素消失,而不影响布局,同时仍发出声音。下面是一个取自HTML5样板的示例:

    .visuallyhidden {
    
        border: 0;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }
    
TLDR;:屏幕阅读器

以下是使图元不可见的不同方法:

  • 显示:无将元素从流中取出。文档被呈现为元素不存在。因此,屏幕阅读器不会发出元素的声音

  • 然后您就有了
    可见性:hidden
    ,它使框不可见,但仍会影响布局

  • 最后,您还有一些技巧,比如使用偏移量进行绝对定位,使元素消失,而不影响布局,同时仍发出声音。下面是一个取自HTML5样板的示例:

    .visuallyhidden {
    
        border: 0;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }
    

我认为这是一个可访问性的问题:许多有声读者可能会跳过带有
display:none
visibility:hidden
的元素。我不确定你所说的有声读者是什么意思,有没有用声音描述网站的工具?如果是的话,那么他们为什么要描述一个不应该被看到的元素呢?我认为这是一个可访问性的问题:许多有声读者可能会跳过一个带有
display:none
visibility:hidden
的元素,我不确定你所说的有声读者是什么意思,有没有工具可以用声音来描述网站?如果是,那么他们为什么要描述一个不应该被看到的元素?什么是发声?当使用
绝对值
显示时,
优点和
缺点在哪里:隐藏?但是为什么你要说出一些不应该被看到的东西呢?我能理解对布局的影响,但不是这个…什么是发声?当使用
绝对值
显示时,
优点和
缺点在哪里:隐藏?但是为什么你要说出一些不应该被看到的东西呢?我可以理解对布局的影响,但不是这个。。。