iframe 的可用性、可访问性、屏幕阅读器或任何其他开发、功能、跨浏览器问题是什么?

StackOverflow https://stackoverflow.com/questions/2258379

可用性、可访问性、屏幕阅读器或任何其他开发、功能或跨浏览器问题是什么? <iframe>?

有没有什么替代方案 <iframe>?

是否有任何 JavaScript/jQuery 或服务器端技术可以减少可用性、可访问性或屏幕阅读器问题 <iframe>?

为什么 W3C 没有包含在内 <iframe> 在 XHTML 严格中,同时 HTML 5 支持 <iframe>?

更新:

我在这里也发现了一些好的想法: http://uxexchange.com/questions/1817/iframe-accessibility-and-usability-issues

有帮助吗?

解决方案

辅助功能:

  • 滚动 iframe 比较困难,你的鼠标必须在 iframe 的范围内。对于行动不便的人来说很困难
  • 盲人浏览器可能不包含您 iframe 中的内容,这些人将无法访问它。

可用性:

  • 当主窗口和iframe上有几个滚动条时,这并不酷。滚动很难

其他事宜:

  • 移动浏览器可能不会为您呈现 iframe。即使渲染出来,也会显得又丑又丑。
  • 搜索引擎将很难在 iframe 中索引您的页面。他们可能会跳过它或者不会正确索引
  • 加载 iframe 会比加载相同内容但没有框架的页面花费更长的时间

其他提示

为什么 W3C 不将 Iframe 纳入 XHTML Strict

因为当时它被视为广受谩骂的私生子。 <frame> 标签。原则 <iframe> 具有许多相同的属性 <frame>, ,但在实践中,它似乎鼓励了更有品味的使用,通常避免了框架集接口所遭受的最糟糕的导航和可用性问题。

HTML 5 支持 Iframe 吗?

(A)。因为,与 <frame>, <iframe> 此后事实证明,它对于混合文档(例如包含广告的文档)和许多类型的 Web 应用程序至关重要。正如其他答案中提到的,仍然存在问题,但总的来说 <iframe> 被视为一项必要的功能,并将继续存在。这不是真的 <frame>, ,这是 HTML5 中的一个“不合格特性”(最接近 HTML5 的“严格”特性)。

(二)。因为 HTML5 的作者并不太关心鼓励良好的实践;它是关于记录用户代理必须做什么的。他们将 HTML4 的所有过时功能以及许多其他传统但狡猾的浏览器行为(包括损坏的标签汤解析的每一个怪癖)都纳入了标准。[在旁边:我很高兴看到他们的清单上讨论的最新论点是如何 <isindex> 元素应该被处理 — 自从 1995 年 HTML 2.0 的表单元素使其过时以来,实际上没有人使用过该元素。]

考虑到 HTML5 的惊人大小和复杂性,他们不希望付出额外的努力来声明更有限的“严格模式”配置文件,这并不奇怪。不过,随着工作的结束,我希望看到 XHTML5 Strict 或类似的努力来减少一些混乱。就目前情况而言,Hixie 和 chums 已经对当今浏览器为实现兼容性而必须采用的每一个令人讨厌的黑客行为进行了快照,并将其作为可预见的未来所有浏览器的标准要求,从而有效地宽恕了这种不良做法。

如果您只有一个 Iframe,就不会有什么问题。然而,多个 iframe 使问题变得更加复杂。焦点不清晰,屏幕阅读器不够智能,无法找到视觉相关性(这与表格不利于设计的原因相同)。 咏叹调 正在尝试解决一些类似的问题。 YUI插件 链接有更多信息。

然而 iframe 确实在设计中找到了自己的位置。在我之前工作的一个项目中,页面包含两个 iframe(其中一个是隐藏的),隐藏的框架用于下载身份验证小程序。这不会增加任何可访问性问题,因为注意力仅限于与页面无缝合并的单个 iframe

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top