2011-12-30 9 views
27

私が取り組んでいるプロジェクトの例を下に示します... 青の背景は、サイドバーのすべての連絡先をラップする別のDIVの内側にあるDIVです一緒にセクション。なぜなら両親マージン/パディングのギャップを持っている丸い境界線を持っているBlue BG DIVを取得していないために、私は
margin: -9px -2px 8px -6px;CSSで負のマージンやパディングを使用することは悪い習慣です

だから、それは負のマージンを使用するには、悪い習慣質問です負のマージンを使用していましたまたはパディング?

enter image description here

+3

ネガティブパディングはCSSでは許可されておらず(動作しません)、マイナスのマージンのみです。 – biziclop

+0

@biziclop情報のおかげで、私はそれを試していたと思うし、それは働いていなかった、それはそれが上に乗って何かであると思ったので、今知って本当に良いです – JasonDavis

+0

@JasonDavisそれはあなたがそれらをどのように使用するかによって異なります。彼らはブートストラップのように、それらを使用しています。ブートストラップのおかげで、すべてのことをレスポンシブ・アンド・オールで世話しています。負のマージンを使用している場合は、同じデバイスをすべて処理しなければならない場合もあります。そうでない場合は、いくつかの画面で水平または垂直のスクロールを作成できます。 –

答えて

31

ません。あなたが負のマージンを使っているという事実を知っていれば、これは必然的にそうでなければ「通常の」位置から「移動」する要素を「引っ張る」/「動かす」ということは、悪い習慣ではありません。

なぜこれについて心配しますか?

+1

さらに、CSSのスペックはマイナスのマージンをカバーしています。 (ところで、私はまだwww-スタイルに書いていません...私は忙しいですが、あなたはこれらの質問にあなた自身を助けているのを見ています:) – BoltClock

+5

私がそれについて尋ねていた主な理由は、私はサイト全体をコード化したり、2つのコードを使ってコーディングするのではなく、そうすることがうまくいかないことを知りました。 – JasonDavis

+0

私はこれが本当に古い答えであることを知っています。スタイリングで「悪い練習」を心配するべきではありません。あなたがサポートしたいブラウザで動作する限り、すべてのA-ok :) – Canvas

6

負のマージンは、見出しなどの要素の内側のパディングを無効にするのに最適な方法です。負のマージンを使用すると、否定的な結果(Pardon the pun)がないことがわかりました。例えば:

<div style="padding:10px;border:1px solid blue;"> 
<div style="margin:-10px -10px 10px -10px;backgorund-color:yellow;">Full width heading</div> 
The content of the div which is now padded in by ten pixels. 
<div> 

私は、私はそれらを最初に発見したときに、負のマージンを心配していたが、それらは非常に有用であることが判明しているので、多くのレイアウトが実際にdivの数を削減し、レイアウトコードをクリーンアップareas-です。

関連する問題