line-height與height的值一樣即可。
div { height: 100px; line-height: 100px; }
置中
2. div中的div垂直置中:
方法一:藉由將div模擬成table,再使用屬性vertical-align
html:
<div id="wrap"> <div id="cell"> <div id="content"> 要被置中的內容 </div> </div> </div>css:
#wrap { display:table; } #cell { display:table-cell; vertical-align:middle; }
方法二:
上面放個div把要置中的內容往下擠
html:
<div> <div id="floater"></div> <div id="middle"></div> </div>
css:
#floater的margin-bottom是#middle的height的-0.5倍
#floater { float:left; height:50%; margin-bottom:-200px; width:1px; /* only for IE7 */ }#middle
{
clear:both; height:400px; position:relative; }
方法三:
html:
<div id="outer"> <div id="inner">
</div> </div>
css:
#outer { position: relative } #inner { position:absolute; top:0; bottom:0; left:0; right:0; margin:auto; }
3. 表格置中:
table裡的td預設就是置中,也可以用vertical-align來決定垂直的排版
,但是這個屬性只對td跟img有用
可以參照:http://www.w3schools.com/cssref/pr_pos_vertical-align.asp
4. 水平置中:
關於水平置中可以參考這個網頁,裡面講得很詳細
http://www.w3schools.com/css/css_align.asp
5. 使用jQuery把div放在螢幕中間
jQuery加入以下function:
jQuery.fn.center = function () { var relativeParent = null; $(this).parents().each(function(){ if( $(this).css("position") == "relative" ){ relativeParent = $(this); return false; } }); var leftShift = ( relativeParent == null )? 0 : parseInt(relativeParent.offset().left); var topShift = ( relativeParent == null )? 0 : parseInt(relativeParent.offset().top); this.css("position","absolute"); this.css("top", Math.max(0, (($(window).height() - this.outerHeight()) / 2) + $(window).scrollTop()) - topShift + "px"; this.css("left", Math.max(0, (($(window).width() - this.outerWidth()) / 2) + $(window).scrollLeft()) - leftShift + "px"); return this; }執行方式:
$(element).center();
http://stackoverflow.com/questions/210717/using-jquery-to-center-a-div-on-the-screen
我是看這個網頁的,裡面還有更多的置中方式
http://blog.yam.com/hanasan/article/35806444
沒有留言:
張貼留言