1

要素のスタイルを示す Chrome デバッガーからの次の表示を検討してください。

font-size: 18px;
height: 17.600000381469727px;
    .a, .h, .r - 1.0em
left: 52.80000305175781px;
line-height: 17.600000381469727px;
    .a, .h, .r - 1.0em

私の理解では、高さは 1.0em と指定されているため、ピクセル単位の値は font-size と正確に等しくなければなりません。代わりに、何らかの理由で 0.4 ピクセル小さくなっています。パディングやマージンの効果はありません。

紛らわしいのは、以前のバージョンでは問題なく動作していたことです。

font-size: 18px;
height: 18px;
    .stone, .iw-capture - 1em
line-height: 18px;
    .stone, .mark, .iw-capture - 1.0em

したがって、ブラウザの計算機能に根本的な問題はありません。ただし、何が変更されて奇妙な動作が発生したのか、さらに言えば、変更がこれに影響を与える理由がわかりません。

なぜこれが起こっているのか、何が欠けているのかについて何か考えはありますか?

4

2 に答える 2

2

を計算する式emは、

1 ÷ parent font size (px) × required pixels = em equivalent

ご覧のとおり、あなたのケースで除算1すると非常に長い浮動小数点数が得られ、後で乗算されますが、まったく同じ整数は得られません。それはブラウザの数学エンジンです..1818

于 2012-07-15T09:57:16.953 に答える
0

何らかの理由で要素の行の高さを使用しているようです。

于 2012-07-15T09:47:57.457 に答える