【问题标题】:Validation on XHTML + RDFa with iFrame on Drupal 7在 Drupal 7 上使用 iFrame 在 XHTML + RDFa 上进行验证
【发布时间】:2011-09-22 06:57:43
【问题描述】:

我目前正在设计的网站需要通过 W3C 的标记验证。我们正在使用 Drupal 7,它强制我们的主题使用 XHTML + RDFa。我们正在使用谷歌地图,它需要一个 iFrame 反过来让我很伤心。

元素“iframe”未定义

有人知道如何绕过这个验证测试吗?用 Google Maps javascript 替换 iframe 是否明智?

【问题讨论】:

    标签: validation drupal xhtml


    【解决方案1】:

    这会成功的

    <script type="text/javascript">
    $(document).ready(function(){
            $('#iframe').after('<iframe src="url" scrolling="no" frameborder="0" overflow:hidden; width:400px; height: 70px;"></iframe>');
    });
    </script>
    

    【讨论】:

      【解决方案2】:

      如果 &lt;iframe&gt; 标记是从 JavaScript 代码中添加的,则该网站将通过验证。
      我也不确定在使用 Google 地图时 JavaScript 是否需要使用该 HTML 标记。

      【讨论】:

        【解决方案3】:

        验证的专制并不总是一件好事。如果您必须使用不允许&lt;iframe&gt; 的文档类型/模式以及需要&lt;iframe&gt; 的服务,那么您将陷入困境。

        废话是 (a) iframe 可以很好地跨浏览器工作,并且 (b) 自从确定了 XHTML 1.x 规范 &lt;iframe&gt; 在 HTML5 中获得了新的生命,它是一个完全有效的元素具有许多新功能。

        此外,几乎可以肯定的是,您正在使用 text/html 内容类型为您的页面提供服务,这意味着浏览器不会以与验证器相同的方式处理您的标记,因此验证器的结果本质上是徒劳的。

        无论如何,如果你真的必须遵守,那么你将不得不不使用&lt;iframe&gt;

        综上所述,我认为没有必要将&lt;iframe&gt; 与 Google 地图一起使用。一种选择可能是改用&lt;object&gt;。但我使用的是谷歌地图(V2 JavaScript API),没有任何一个,只是将地图元素直接嵌入到容器页面中。似乎工作正常。

        不过,我没有使用 Drupal 7。我不知道可能会应用什么额外的限制。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-10-06
          • 2014-01-13
          • 2016-08-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多