2012-03-23 17 views
0

これは、このサイトに複数回含まれています。しかし、私は他人の問題に対する答えを自分のものに当てはめることはできません。だからここに私の具体的なケースです:別のdiv内の2つのインラインdivを縦横に整列させて整理してください。

<div class="logo-align_container"> 
    <div class="logo_image"> 
     <img src="images/logo.png" /> 
    </div> 
    <div class="logo_text"> 
     <div class="site_name"> 
      <h1>foo</h1> 
     </div> 
     <div class="site_slogan"> 
      <h2>bar</h2> 
     </div> 
    </div> 
    <br class="clearBoth" /> 
</div> 

にはどうすればいいlogo-align_container内で垂直および水平logo_imagelogo_textを中央にしますか? Web上に散在する修正を適用するたびに、divを中央に水平に配置することができますが、は常にlogo-align_containerの先頭に揃えられ、再配置はできません。

さらに、画像とテキストはページのかなりの部分を構成します。ウィンドウが小さすぎてインラインでの位置に配置できない場合は、のようにlogo_textが崩壊してしまいましたが、今まではこれまでに起こっていますが、両方がまだ水平方向と垂直方向に整列しているようにしてください。これが最初の問題の修正の一部とならない場合は、別々に行うことができれば本当に素晴らしいでしょう。logo-align_container固定高さは532pxとなります

ありがとうございます!

EDIT:wheresrhysの溶液がほとんど印をつけます。私がそれをしたいと思っている達成していないものをここにあります:http://i.imgur.com/BhHMv.png

+0

同じ高さの画像はありますか? – HerrSerker

+0

あなたの試みのコードをjsfiddleでも投稿できますか? –

+0

イメージ:1つのイメージしかありません。真実:私の試みは基本的に以下のwheresrhysのように見えた。 – user1288171

答えて

0

このバイオリンは解決策を示しています。http://jsfiddle.net/wheresrhys/t6pUq/いくつかのポイント

  1. display:inline-block

    を使用してそれとしてIE7で上下に動作しません。インラインブロックはデフォルトでdisplay:inlineの要素ではサポートされていません。このシナリオでは、表示ブロックを使用し、logo_wrapperにmargin: x auto 0を設定することが適切です。ここで、xは、ロゴとタイトルを大まかに縦の中央に配置する値です。

  2. htmlを少し修正しました。中心に置く必要があるすべての要素の周りにラッパーを追加する必要があります。またコメントによって、inline-block要素の配置に影響を与える空白が防止されます。
+0

あなたのソリューションは '.logo_wrapper'が' logo_image'と 'logo_text' inlineを収容するのに十分な大きさを除いて良いです。それが起こると、2人を横に並べ、縦に並べるようにします。この位置から、ウィンドウが2つのインラインに収まらないポイントまで収縮するとき、 'logo_text'はあなたの解決策である' logo_image'の中に入るはずですが、全体をまだ中央揃えにする必要があります。あなたのソリューションでは、すべてが重要な程度に左揃えされています。できるだけ理解しやすくするために、画像比較をできるだけ早く行う予定です。 – user1288171

+0

約束された画像の比較:http://i.imgur.com/BhHMv.png – user1288171

+0

logo_wrapper内のアイテムに同様のテクニックを再度適用することで、サイドバイサイドの場合のテキストアライメントを実現できますが、余分なスペースがないときにテキストの中心が画像の下に整列すると、おそらくメディアクエリが必要になります(このレイアウトは、より小さい解像度のスクリーン/ウィンドウで必要とされると仮定します) – wheresrhys

関連する問題