Html 为什么设计著名的浏览按钮(文件输入)如此困难?

Html 为什么设计著名的浏览按钮(文件输入)如此困难?,html,css,Html,Css,每个人都想(也应该)知道(这是众所周知的)。但我更想知道为什么我们必须与一个看似微不足道的技术限制作斗争,而这一限制比一切都重要 我对这个问题不太满意,所以我在研究过程中可能完全错过了它,但我找不到任何关于这个问题的起源的可靠文档(参考文献会很好)。这个控件是由操作系统呈现的,而不是HTML。它因平台而异。很难设置样式,因为它不是规范的一部分。很难,因为有一个你无法识别为标准文件浏览按钮的按钮可能会导致安全风险。这就像onBeforeUnload上的对话框和其他危险功能:它们必须是可识别的。本质

每个人都想(也应该)知道(这是众所周知的)。但我更想知道为什么我们必须与一个看似微不足道的技术限制作斗争,而这一限制比一切都重要


我对这个问题不太满意,所以我在研究过程中可能完全错过了它,但我找不到任何关于这个问题的起源的可靠文档(参考文献会很好)。

这个控件是由操作系统呈现的,而不是HTML。它因平台而异。很难设置样式,因为它不是规范的一部分。

很难,因为有一个你无法识别为标准文件浏览按钮的按钮可能会导致安全风险。这就像onBeforeUnload上的对话框和其他危险功能:它们必须是可识别的。

本质上,任何标准中都没有“浏览按钮”。这就是浏览器渲染控件的方式。不同的浏览器呈现出不同的效果——不同的颜色、不同的大小、不同的位置,等等。如果有一种方法可以更合理地设置输入的样式,那就好了,但是现在它们的内容被称为“阴影DOM”,这基本上意味着“这里有东西,但你不能碰它,因为标准中不应该有它。”

接触文件系统是非常受保护的。有时甚至不允许访问(iPhone)