2012-01-19 12 views
2

次の点を考慮してください:http://jsfiddle.net/MgZ7n/10/私の含むdivの背景色がページを横切っていないのはなぜですか?

私はhd全体を青で強調したいと思います。それは、左のコンテンツから正しいコンテンツまでです。どのようにhd要素の幅を100%に設定せずに達成するのですか?

注:幅を100%に設定するとChromeに奇妙なバグが発生します。ブラウザがフルスクリーンで設定されていると、右の要素の内容が右に出血し、一部が画面外になります。

ありがとうございます!

答えて

2

(あなたが本当に固定位置となし幅100%を必要とする場合)、これについては何:

#hd { 
    background-color:blue; 
    position:fixed; 
    right: 0; 
    left: 0; 
} 

http://jsfiddle.net/MgZ7n/17/

+0

+1、うまくいくようです。 – grc

+0

うまくいくが、Chromeのバグは残る。 '右:0;左:0; 'width:100'と同じ効果があるようですが、再現性のあるサンプルを作成するのは苦労しています。本当に質問に答えたので、私はこれを答えとしてマークします。実際の問題を分かち合うために、より良い方法で新しい質問を開きます。 – Barka

0

私はこの単純な変更製:#HDに

#hd 
{ 
    background-color:blue; 
    position:fixed; 
    top: 0; 
    left: 0; 
    width: 100%; 
} 
#right 
{ 
    float:right; 
    margin-right: 10px; 
} 

をクロームで、私はブリードオフ表示されません。ここに私ですjsFiddle

私はあなたのspan id="right"を変更しました。あなたはそれを浮かせて、固定された位置に設定しました。お互いのオーバーライドの種類(私は順位を獲得すると仮定します)。あなたのための解決策は、それを浮かせることです:右と余白 - 右:10px。

+0

まだブリードを経験したら教えてください。 –

0

ノート*あなたのCSSに

#hd 
{ 
    background-color:blue; 
    /*position:fixed;*/ 
} 

をHDスタイルから固定位置を削除します。あなたのフィドルのタイプミスがCSSセクション#leftに、あります、#centerスタイルはFLOADの代わりに、フロート

を語ります
+0

また、これは位置が固定されていないことを意味します。 – grc

+0

@grc問題は、divを修正する必要があるとは言いません。 – GuZzie

+0

いいえ、私はそれを言いませんでした。それは私の悪です。しかし、これはページの上に留まる必要があるヘッダーです。 – Barka

0

位置を削除:CSSの#hdから修正しました。青は完全に伸びます。

+0

しかし、その位置は固定されていません... – grc

+0

ページの上部に留まり、スクロールしていないヘッダーが必要なので、これは@grcと同様に動作しません。 – Barka

0

私は(上の固定位置を削除し、あなたの問題を解決するには、以下のCSSを変更#hdを削除して誤植を削除しました):

#hd 
{ 
    background-color:blue; 
} 
#left, #center 
{ 
    float:left; 
} 
#right 
{ 
    float:right; 
    position:fixed; 
    right:10px; 
    top:0px; 
} 

あなたの目的はこのレイアウトではわかりませんが、改善が必要だと思います。

3つのコンテンツの列にspanの代わりにdivを使用することをおすすめします。

div要素を使用する場合、必要に応じてdiv要素をスタイル設定し、そのdiv要素内にコンテンツを配置することができます。あなたのCSSを使用すると、あなたのコンテンツdivsをうまく隣同士で浮かべることができます。display: inline-block

+0

もう一度、私は確信して '位置:固定'は理由のためにそこにあった。 – grc

+0

@grcはもう一度です:) – Barka

関連する問題