2011-08-05 4 views
0

ウェブサイトのコンテンツが表示されているかどうかにかかわらず、コンテンツdivがあると考えてください。ヘッダーから余裕をもたなければならないため、このdivの余白は20pxです。右側のサイドバーもあります。つまり、コンテンツ全体と2つの浮動小数点divsが互いに隣り合っているということです。 1つはコンテンツ用、もう1つはサイドバー用です。かなり標準。CSSマージンの問題

今、突然コンテンツにブレッドクラムを追加する必要があります。今、ブレッドクラムはヘッダーから余裕を持ってはいけません。ただし、コンテンツには、ブレッドクラムが有効かどうかに関係なく、20ピクセルの上マージンが必要です。

確かに、breadcrumbsは別のdivにあるようにして、コンテンツの一番上に置いてください。これは、コンテンツのdivが2つのdivに分割される必要があります。たとえば、 'breadcrumb'と 'main_content'です。

パンくずは実際にコンテンツの一部であると私は思うので、これは私にとっては悪い考えです。さらに、私はこの新しいdivと一般的なマークアップの変更でそれらを提示するために私のすべてのテンプレートを変更する必要があります。

breadcrumb divにトップマージン:-20pxを追加しようとしましたが、それは他のコンテンツにも適用されるため良くありません。

良い方法でそれを行う方法に関するアイデアはありますか?

P.S.サイドバーのdivには20pxのマージンはありません。メインコンテンツにはマージンがあり、内部コンテンツにはマージンがあります。

+0

何も考えられません!私たちのコードを表示します。 – Shef

答えて

1

position: relative; top: -20px;はあなたのために機能しますか?

+0

ああ、それは上品に見えます!そのように使うのは安全ですか? – Spyros

+1

これはあなたの単語「安全」の定義に依存します。それは子犬を殺しません。 – Tomalak

+0

笑、私は何かの互換性の問題か何かを意味します:P異なるブラウザで。負のマージンとその種の相対的位置付けのために。私はそうではないと思うが、確かめるためにちょうど:) – Spyros

1

main_contentdivに対してposition:relativeを指定します。あなたはposition:absolute、top:some-pxを適用する必要があります。下:あなたの要件に応じていくつかのpx。

+0

私は過去にいくつかの位置決め要素についてこれを実際に行ってきました。本当に合理的な、高すぎる音。 – Spyros

+0

breadcrumb divを相対的に配置するだけで何が問題になりますか? – Tomalak