- 締切済み
【CSS】divの中で縦方向の中央揃えは、どうやってかくのでしょうか?
すいません、divの中で縦方向の中央揃え、つまり、 divの代わりにtableタグの中のtdで書いた場合の、 <td valign="middle">ほげほげ</td> と同じことをdivで実現するにはどうすればいいのでしょうか? ご存じの方いらっしゃったら、よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
noname#66720
回答No.2
noname#66720
回答No.1
お礼
ご回答ありがとうございます。 で、以下のようにcssを記述してみたのですが疑問点が… //--- <div class="miya-vertical_align-wrapper"> <!--inside this div, vertical-align is avalable.--> <div class="miya-vertical_align-middle"> 中身中身中身・・・・・ </div> <!--/inside this div, vertical-align is avalable.--> </div> //--- //--- div.miya-vertical_align-wrapper{ /*以下 (1)IEで、バージョンが7以下(7を含む)のものに対して適用 (2)IEで、バージョンが7より上(7は含まない)のものに対して適用 (3)IE以外に対して適用 の順。 */ <!--[if lte IE 7]> display:inline; zoom:1; <![endif]--> <!--[if gt IE 7]> display:table-cell; <![endif]--> <!--[if !IE]>--> display:table-cell; <!--<![endif]--> } div.miya-vertical_align-wrapper div.miya-vertical_align-middle{ vertical-align:middle; } //--- 疑問点が2つあります (1) 将来もしIE バージョン 7.5 のようなものが現れたとして その場合「IE バージョン 7.5 」は、 [if gt IE 7](バージョンが7より上(7は含まない)のものに対して適用) の条件にあてはまってしまうのでしょうか? もしあてはまってしまうとしたら、どう書きなおせば、対応できるでしょうか? (※) <!--[if lt IE 8]> display:inline; zoom:1; <![endif]--> 「のように、IEのバージョンが8より小さい(8は含まない)」、という書き方ができれば、対応できるのですが、 http://journal.mycom.co.jp/special/2007/ie7/017.html によると、「8」を書くことはできないようでして・・・。 (2) <!--[if gt IE 7]> display:table-cell; <![endif]--> <!--[if !IE]>--> display:table-cell; <!--<![endif]--> の部分、冗長なのですがこうしかかきようがないでしょうか? (※) 「else」が使えれば、解決できそうなのですが、検索しても、elseを使った例や解説が見つからず。 //--- 以上、よろしければお答えいただけると助かります。 よろしくお願いいたします。