【问题标题】:IE 11 ignores font-sizeIE 11 忽略字体大小
【发布时间】:2016-08-10 06:43:01
【问题描述】:

在 IE11 中,我的导航栏的 font-size 比其他浏览器小得多。

在我的 CSS 文件中,我设置了 body { font-size:16px; },我想为文档设置默认的 font-size

对于所有其他元素,我使用em 单位。

我在导航栏中将font-size:1.5em 设置为<a>,应该是24px,但IE11 忽略了这一点,并且字体大小仅为16px。网站上的其他一些文字也会发生同样的情况(h1h2span)。

当我检查元素时,我看到 IE11 将 1.5em 大小显示为分配给它的大小,但计算结果仅为 16px。 其他浏览器(包括 Edge)正常显示网站。

* {
  border: none;
  margin: 0;
  padding: 0;
  text-decoration: none;
  line-height: normal;
  list-style-position: inside;
}
* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
body {
  color: #666;
  font-family: 'Roboto', Arial, Tahoma, sans-serif;
  font-size: 16px;
  font-weight: normal;
  padding: 0;
  margin: 0 auto;
  background-color: #fff;
}
nav#top {
  float: right;
  display: inline-block;
}
nav#top ul {
  list-style: none;
  display: inline;
}
nav#top ul li {
  list-style: none;
  display: inline;
  float: left;
}
nav#top ul li a {
  display: block;
  float: left;
  padding: 30px 10px;
  font-size: 1.5em;
  font-family: 'Lato', sans-serif;
  font-family: 'Arimo', sans-serif;
  color: #fff;
  text-shadow: 1px 1px 1px #060;
}
<nav id="top">
  <ul class="clearfix">
    <li><a href="page1/">Label 1</a>
    </li>
    <li><a href="page1/">Label 1</a>
    </li>
    <li><a href="page1/">Label 1</a>
    </li>
    <li><a href="page1/">Label 1</a>
    </li>
    <li><a href="page1/">Label 1</a>
    </li>
  </ul>
</nav>

我在 Google 上搜索了 font-size:100% !important 和类似的解决方案,但没有找到任何可行的方法。

【问题讨论】:

  • 您的代码在 IE11 中完美运行,请查看here
  • 您是否尝试过在html 元素上设置16px 字体大小,然后使用rem 单位?这应该避免任何标准行为(1.5rem 总是 1.5 倍 html-rem 单位)
  • 好的,谢谢。我的电脑上的 IE11 似乎没有正确配置,并且由于某种原因它忽略了 CSS font-size 设置。即使我设置为20em 或使用像素,即。 40px 字体不会改变大小。如何恢复IE11的默认配置?
  • 我找到了。已在 Internet 选项 -> 辅助功能中选中“忽略网页上指定的字体大小”选项。现在完美运行。感谢您的帮助。

标签: html css internet-explorer-11 font-size


【解决方案1】:

请试试这个:

nav#top ul li a {
    color: #fff;
    display: block;
    float: left;
    font-family: "Arimo",sans-serif;
    font-size: 24px;
    padding: 30px 10px;
    text-shadow: 1px 1px 1px #060;
}

【讨论】:

  • 他为什么要这么做?更具体地说明你的答案:)
  • 使用像素单位不是我想做的。无论如何它无论如何都不起作用。看来我的 IE11 配置不正确。
【解决方案2】:

这并不适用于所有用例,但这种方式大大减少了我的头痛。

为了获得整体良好的跨浏览器体验,我建议您通常从正文标签中删除字体大小,让浏览器发挥它们的魔力。

虽然 - 乍一看 - 您可能会失去对设计的控制,但我了解到,如果您删除大部分 font-size 属性,您会获得更一致的结果。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-24
    • 2012-02-08
    • 1970-01-01
    • 2013-08-15
    • 1970-01-01
    • 2022-12-03
    • 2014-04-07
    相关资源
    最近更新 更多