1

私はいくつかのCSSを持っています:

fieldset {
    border-radius: 5px;
    border: 3px solid blue;
    padding: 5px;
    margin: 0em;
}
legend {
    font-weight: bold;
    color: green;
}
#myform{
    width: 330px;
    margin: 0em;
}
body {
    font-family: Arial, sans-serif;
}

を埋め込んだ場合<style>、完全に正常に機能します。

CSSが埋め込まれた拡張機能

しかし、同じCSSをスタイルシートに入れて<link>、を使用してインポートすると、ランダムな空白が表示されます。

同じCSSの拡張機能ですが、<link>を使用して外部スタイルシートからインポートされます

フォーム要素を完全に削除しましたが、まだ空白が残っています(ただし、それらを保持すると、かなり多くの空白があります)。Chrome開発者コンソールを使用してフォームと身長をチェックし$(body).css("height")ました(フォームについても同じです)。空白を含めるには小さすぎる数値が表示されますが、空白を無視すると高さに一致するようです。これはどこから来たのですか?

4

2 に答える 2

1

これはバグのようです。開発者コンソールでボディのマージンを前後に変更すると、再び正しくなります。CSSでこのプロパティを設定しても、まったく効果はありません。

簡単な回避策は、のようなポップアップ用のjavascriptファイルを作成しpopup.js、ポップアップウィンドウがロードされた後にそこでマージンを変更することです。

document.addEventListener('DOMContentLoaded', function() {
  document.body.style.margin = '8px';
});

8pxChromeポップアップの標準値であるため、値として使用しました。

ここに画像の説明を入力してください

このバグをChromeの問題リストに報告することを検討する必要があります。

于 2012-11-10T13:07:46.213 に答える
0

CSSに!importantキーワードを付けます。

#myform{
    width: 330px !important;
    margin: 0em !important;
}
于 2012-11-04T17:03:39.497 に答える