【问题标题】:IE7 & IE8 <hgroup> background colorIE7 & IE8 <hgroup> 背景颜色
【发布时间】:2011-05-28 08:19:17
【问题描述】:

出于某种奇怪的原因,我设置的任何背景样式(如果有任何区别,则在模态中加载)不会在 IE7 或 IE8 中呈现。在所有其他(真实)浏览器(包括 IE9)中,这一切看起来都很好。我的代码如下:

<hgroup>
<h6>Request Information Form</h6>
 <a href="#" onClick="closeModal(); return false;"><img src="/images/x-close.png" alt="Close" class="close" /></a>
</hgroup>

我知道你不应该在 &lt;hgroup&gt; 中添加除 &lt;h1&gt;-&lt;h6&gt; 之外的任何内容,但我需要在其中放置这个小的关闭 img,即使我尝试将其拔出,我也遇到了同样的问题(加上这一切“似乎”都可以验证)。

CSS 是:

hgroup {
position: relative;
width: 668px;
height: 32px;
margin: 0 0 16px;
padding: 14px 14px 0 14px;
background: #B66115 url(/images/modal_header_bckgrnd.png) repeat-x 0 0;
font: normal 20px/20px 'crimson Text',Georgia,serif;
color: #F6F5EE;
}

另外,我已将&lt;hgroup&gt; 声明为display:block,并且我正在使用IE shim。我一直得到的只是一个白色背景(当我在块中有白色文本时,这真的不起作用!)。

提前感谢所有帮助。

【问题讨论】:

  • hgroup 是作为 HTML 5 的一部分引入的,据我所知 IE7 和 IE8 不支持这个标签。

标签: css internet-explorer html internet-explorer-7


【解决方案1】:

IE7 和 IE8 不会将 html5 标记名称加载到文档中。任何无法识别的标签都会被忽略。尝试添加一些 javascript 来手动添加它们(或使用诸如modernizr.js 之类的东西)。

<script>
document.createElement('header');
document.createElement('hgroup');
document.createElement('nav');
document.createElement('section');
document.createElement('article');
document.createElement('aside');
document.createElement('footer');
</script>

【讨论】:

    【解决方案2】:

    在模态中加载,如果那样的话 有什么不同

    您的模态窗口是否使用iframe

    如果是这样,您还需要在 iframe 中运行 HTML5 元素 shim 脚本。

    【讨论】:

    • 刚刚发现,就在您发布此答案之前...我再次检查了代码,由于这是一个模式,使用 Shadowbox,我们将此表单加载为 iFrame,而 Shim 不是在被加载到模式中的页面的标题中声明......因此没有 HTML5 识别。
    • 谢谢。你刚刚拯救了我的一天!
    【解决方案3】:

    使用HTML5 Shiv

    在一个稍微不相关的注释中,您错误地使用了&lt;hgroup&gt;。它应该只包含一个或多个 hN 元素,仅此而已。

    使用上面的代码,您应该改用&lt;header&gt;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-14
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      • 2013-09-02
      • 2012-12-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多