ユーザー インターフェイスのチュートリアル中に、いくつかのページ要素にスポットライトを描画しようとしています (グラデーション付きの角丸四角形を使用した CSS3 スポットライト効果 を参照)。
たとえば、ナビゲーション バーは次のとおりです。
注目されています (ページの残りの部分は淡色表示されています):
しかし、私のページの要素の 1 つが問題を引き起こしています。Chrome での配置は次のとおりです。
ただし、jQuery は 330px x 60px と認識しています。
> var blah = $('.user-list')
[
<div class="well well-skinny user-list">…</div>
]
> blah.height()
60
> blah.width()
330
これにより、スポットライトを描画すると小さすぎます。
奇妙なことに、ページには (navbar のような) 他の要素がたくさんあり、それらのサイズは正しく計算され、スポットライトはそれらを正しく表示します。
jQuery が誤った高さと幅を表示する原因となっているこの要素はどうなっていますか? いくつかの追加情報:
- ブートストラップではうまく機能しない要素
border-box
を除いて、ページ全体がサイズ変更されています。input
- サイズの不一致を補う 1 ピクセルの境界線ですべての側面に 9 ピクセルのパディングがありますが、サイズの計算が適切に機能する境界線/パディングを含む他の多くの要素があり、これが唯一の奇妙な要素です。たとえば、上記のブートストラップ ナビゲーション バーには、左右に 20 ピクセルのパディングがありますが、幅は正しく計算されています。