2015-10-01 25 views
5

我遇到了一个问题,我正在使用的项目将字母TM始终以只在Firefox中的上标呈现在一起。这里是一个jsfiddle,让你看到的问题在行动:https://jsfiddle.net/2aLp0zbc/1/Nimbus Sans L仅在Firefox上标中渲染TM ...浏览器错误?

我不知道这是一个浏览器错误或损坏的字体文件(在我测试过的所有其他浏览器中工作正常),或者如果我错过了别的东西。对于任何反馈,我们都表示感谢。

@font-face { 
    font-family: 'NimbusSansL'; 

    src: url('https://dl.dropbox.com/s/8u7missp60h2c32/nimbus-sans-l_regular-webfont.woff2?dl=1') format('woff2'); 
    font-weight: normal; 
    font-style: normal; 
    -webkit-text-stroke: 1px rgba(0,0,0,0.1) 
} 

body { 
    font-family: 'NimbusSansL'; 
} 
+0

我只是用'文本transform'作为工作围绕尝试和*它仍然把它放在标*。这只是*怪异*。 – BSMP

+0

据我所知,它没有把它放在上标中,它将TM替换为TM字符。非常奇怪,但很可能是字体中的连字错误。 – joshhunt

+0

@joshhunt,但您仍然可以单独选择字母,并且™连字符是单个字符。我倾向于使用某种只会导致Firefox呈现错误的字体版本。 – Kevin

回答

3

至于我可以告诉它不要把它标,它与™字符替换TM。非常奇怪,但很可能在字体中出现了ligatures错误。

要解决它,你可以将它添加到你的CSS:

font-variant-ligatures: no-common-ligatures; 

注意,这可能会在字体效果等连字。

+0

我也被告知这个设置,我去了: font-feature-settings:“liga”off; – Kevin

+0

我也试过,它似乎并没有为我工作。原来我只是语法错了,你说得对,那也行。 – joshhunt

+0

尽管我可以告诉他们做的事情完全一样吗?不太了解这些设置。 – joshhunt

0

我觉得你的字体文件有些问题。当我将字体更改为Arial时,TM会恢复正常。

https://jsfiddle.net/2aLp0zbc/7/

body { 
    font-family: arial, 'NimbusSansL'; 
}