Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.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 为什么在桌子上使用div?_Javascript_Html_Reactjs_Accessibility - Fatal编程技术网

Javascript 为什么在桌子上使用div?

Javascript 为什么在桌子上使用div?,javascript,html,reactjs,accessibility,Javascript,Html,Reactjs,Accessibility,该问题表面上是以下问题的重复: 但我认为没有一个很好的解释来解释为什么有人会忽视我们一致同意的标准做法 2017年,表格被不适当地用于布局,所以人们说不要使用表格,但我们知道的例外是用于可视化表格数据 为什么react表由DIV而不是table/tr/td/th组成?当然,一些(如果不是全部的话)43位贡献者知道它不应该是div 最后,是否有一个可访问性的论据来支持对工作使用正确的定义?屏幕阅读器难道不知道它使用的是表b/c吗?现在,表格数据可以用divs和flex-box css模型很好地格式

该问题表面上是以下问题的重复: 但我认为没有一个很好的解释来解释为什么有人会忽视我们一致同意的标准做法

2017年,表格被不适当地用于布局,所以人们说不要使用表格,但我们知道的例外是用于可视化表格数据

为什么react表由DIV而不是table/tr/td/th组成?当然,一些(如果不是全部的话)43位贡献者知道它不应该是div


最后,是否有一个可访问性的论据来支持对工作使用正确的定义?屏幕阅读器难道不知道它使用的是表b/c吗?

现在,表格数据可以用
div
s和flex-box css模型很好地格式化。与
不同,不是100%,但非常接近。此外,
table
元素(尤其是
tr
)可以使用css进行样式化,以实现手机和平板电脑的响应行为。至少在大多数现代网络浏览器中是这样


因此,当您需要保留“橡皮”列(按比例拉伸表标题和表体列)时,我会使用表;当您可以使用已知宽度的列并且语义不那么重要时,我会使用div。

使用div的最重要原因是为了响应视图!表仍然有很多限制,不使用表可以避免这些限制。滚动(固定标题/列)、响应性等移动。通常在移动设备上,数据表会垂直堆叠,以便更好地适应小屏幕。这很难在CSS中使用普通表进行样式设置,因为元素不能移动到各自的表外以堆叠到另一行的顶部。这不是div vs table,而是语义vs table问题是,从纯语义的角度来看,人们认为表格是表格数据的正确选择是正确的,在许多现代场景中,它们不足以作为解决当前设计或开发需求的工具。当“书本正确”的解决方案令人痛苦,但“书本错误”的解决方案却完美地工作时,要么是调整书本的时间,要么是调整解决方案的时间。