2011-12-15 4 views
1

説明が混乱しますが、2つのdivがあります。ページ上の左側に座っているもの、右側がフロートを介して座っているもの。右側のものはHTMLの最初のもので、左側のものは2番目のものです。基本的に、私はそれを持っているので、左のdivが上に座って、右のdivがその下に座っています。 LeftとRightがHTML上で順番に並んでいれば、浮動小数点数を取り除くのと同じくらい簡単です。しかし、これは事実ではないので、私は少し手が必要です。ここで私はセットアップを持っているjsfiddleです:http://jsfiddle.net/7bTjj/CSSには、divの右下にdivがあります。 DivsはHTMLの逆です

+0

あなたは何を変更できますか?唯一のCSS? – mrtsherman

+0

なぜあなたはhtmlの中で最初に正しいものを望んでいますか? – Mike

+0

ええとCSSのみ。私は基本的に画面が幅が450pxよりも小さいときにこれが起こることを望んでいます。私は私の個人的なサイトでCSSのメディアクエリを使用しているので、よりモバイルユーザーフレンドリーです。基本的に私が使用しているテンプレートはそのように設定されています。 2列のレイアウトです。最初のdivは右に浮動小数点表示されます:右、左に浮動小数点:leftが表示されます。 – agmcleod

答えて

4

あなたは絶対的なポジショニングを使用する必要があります。これで、レイアウトの管理用に作成されたCSS3プロパティを使用してこの問題を解決できます。

すべての山車を使用せずに、あなたは好きな順番であなたの .containerの内容を表示する

使用display:boxbox-ordinal-groupプロパティ:

(唯一の簡略化のため-webkitベンダープレフィックス)

.container, .left, .right { 
    display:-webkit-box; 
    -webkit-box-orient: vertical; 
} 

.left { 
    -webkit-box-ordinal-group: 1; 
} 

.right { 
    -webkit-box-ordinal-group: 2; 
} 

ますので、」モバイルをターゲットにして、IEのサポートの欠如は問題ではありません。

Here's my fork of your fiddle

Isotomaには、あなたのCSSを調整する際に参照したnice, readable introduction to flexboxがあります。

+0

間違いなく興味深いCSSルールですが、それは私のために働いていないようです。 http://jsfiddle.net/NuAJ6/2/フィドルに私の編集があります(あなたのリンクには何もないようです)。 Firefoxとchromeの両方で、彼らはまだお互いに横たわっています。ファイアーフォックスで悪いことに、それはもはや幅の値を受け入れず、テキストサイズに適合します。どのように私はそれをさらに行うことができますか? – agmcleod

+0

私はjsfiddleを更新しました。私はそれがFirefoxでのアイディアが機能していないことを知っていますが、400pxのスクリーンの30%が有益であるとは思えません。 – bookcasey

+0

@agmcleod私はFFとChromeの両方の修正を見ています。私のリンクはあなたが与えたリンクとは異なります。http://jsfiddle.net/NuAJ6/3/ – austinfromboston

1

あなたは要素のheightwidthを知っていれば、それはmarginで可能です。

.left { 
    height:20px; 
    width:70%; 
    float:left; 
    margin-left:-30%; 
} 

.right { 
    width:30%; 
    float:left; 
    margin-top:20px; 
} 

Demo

そうでない場合は、JavaScriptが必要になることがあります。ここにはsimilar questionがあります。

+0

残念ながら、これはテンプレートなので高さは変わります。私はjavascriptでそれを行う方法についてかなり良いアイデアを持っています。それを避けることを望んでいただけだったので、私は画面のサイズ変更にイベントを追加する必要があるためです。 – agmcleod

+0

これは高さを知らなければ、これは可能ではないようです。 – Wex

関連する問題