首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当使用" Font -family: monospace“时,IE使用Courier字体

当使用" Font -family: monospace“时,IE使用Courier字体
EN

Stack Overflow用户
提问于 2013-02-05 08:31:56
回答 2查看 19.8K关注 0票数 1

我有一些(测试) HTML,比如:

代码语言:javascript
复制
<!DOCTYPE html>

<html lang="en">

<head>
  <title>Test Monospace</title>
  <style>
  tt { font-family: monospace; }
  </style>
</head>

<body>
  <h1>Test Monospace</h1>
  <p>This is normal text</p>
  <p><tt>This is monospaced text</tt></p>
</body>

</html>

当我在IE中显示时,等宽文本使用Courier New而不是我在IE中配置的字体。如果我除了删除<style>...</style>块之外什么也不做,它会正确地使用配置的字体。

它只为IE做这件事,而不是FF或GC。Windows 7上的IE 9。

无论样式是在哪里配置的,包括单独的样式表还是使用样式属性,它都会这样做。

真正的问题是,使用以下样式指定font-family和font-size是解决浏览器等宽文本问题的关键:

代码语言:javascript
复制
/* monospaced sizes are horribly broken in browser default stylesheets */
code, kbd, pre, samp, tt {
    font-family     : monospace,monospace; /* Chrome   (but note that this makes IE use "Courier New" for some strange reason, as does plain monospace.) */
    font-size       : 1em;                 /* Firefox, IE,Opera */
    }

有谁知道如何阻止IE这样做吗?

EN

回答 2

Stack Overflow用户

发布于 2013-02-05 16:54:40

monospace不是一种特定的字体系列。与serifsans-serif完全一样,它们都是泛型系列定义。

font-family: monospace;只是告诉浏览器使用默认的"monospaced font",在本例中是Courier New。另请参见this resource

编辑:

如果在CSS中省略了ttfont-family规则,IE9似乎会显示自定义设置的纯文本字体。请看这个小提琴:http://jsfiddle.net/sVCwd/1/

希望这能有所帮助。

票数 3
EN

Stack Overflow用户

发布于 2013-02-05 13:38:24

似乎在IE中,monospace的意思是“信使新”。更改“纯文本字体”的IE设置会影响某些元素的默认字体,但不会更改monospace的含义。在old discussion中,似乎知道自己说了什么的人写道:“(请不要评论衬线和等宽字体,这些字体可以使用工具,互联网选项来选择。它们与默认的CSS通用字体无关。)“

作为一名IE用户,如果你想改变monospace的含义,我想你需要在Windows注册表中为它找到一个条目(我在Windows7中找不到它-例如,我找不到IEFixedFontName )。

但是,如果您只想用您喜欢的等宽字体呈现一些元素(就实际效果而言,这基本上是相同的),您可以设置一个包含如下内容的用户样式表

代码语言:javascript
复制
code, kbd, pre, samp, tt, xmp, listing, plaintext {
    font-family: Consolas !important;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14698234

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档