-2
A
回答
0
0
<html>
<head>
<title>vertical align</title>
<style>
* {margin:0px;padding:0px}
#content {height:490px; width:960px; position:absolute; border: 2px #000 solid}
</style>
<script>
function resize(){
var content = document.getElementById('content');
var body = document.getElementsByTagName('body')[0];
if(window.getComputedStyle){
var bodyHeight = window.getComputedStyle(body).height.replace('px','');
}else if(body.runtimeStyle){
var bodyHeight = body.offsetHeight;
}
content.style.top = (bodyHeight - 490)/2 + 'px';
}
window.onresize = window.onload = resize;
</script>
</head>
<body>
<div id="content">
</div>
</body>
</html>
0
#content{
height: 490px;
margin-top: -245px;
top: 50%
}
0
的傳統方法是使用一個表,並設置vertical-align:middle;
,但使用表格排版現在被認爲是不好的做法。新的解決方案是靈活的盒子佈局,但仍然沒有得到廣泛的支持。所以,這是一箇中間解決方案。這有點駭人聽聞,但它可以在每個瀏覽器中完成工作,並且不使用表格。 (live demo)
<!doctype html>
<html lang='en'>
<head>
<meta charset='utf-8'>
<title>positioning test</title>
<style type='text/css'>
* {margin:0; padding:0;}
body {position:absolute; width:100%; height:100%;}
#pad {height:50%; min-height:245px;}
#content {height:490px; margin-top:-245px;
background:#f88; border:2px solid #000;}
</style>
</head>
<body>
<div id='pad'></div>
<div id='content'></div>
</body>
</html>
請不要使用JavaScript這一點 - 這是一個非常糟糕的主意,使用JavaScript的佈局,除非絕對必要,而對於這一點,肯定是沒有必要的。此外,請注意,您不能合併兩個div,只需設置#content {position:absolute; top:50%;}
,因爲#pad
必須具有正確的min-height
,否則某些內容將隱藏在短於490像素的窗口中(本例中爲494px)。
0
鏈接到垂直對齊頁是這裏.... Here
只是瀏覽網頁源&你會知道該怎麼做的[垂直對齊的div(無表)]
相關問題
- 1. 跨瀏覽器垂直文本對齊
- 2. CSS垂直對齊:瀏覽器怪癖
- 3. 垂直對齊(IE瀏覽器!)
- 4. 垂直對齊中間
- 5. 以小瀏覽器分辨率垂直居中Flash網站
- 6. 瀏覽器寬度調整大小的垂直對齊問題
- 7. 差異文字的垂直對齊在瀏覽器之間的一個div
- 8. 垂直,右側和底部對齊;跨瀏覽器
- 9. 如何跨瀏覽器垂直對齊文本
- 10. 垂直對齊文本和圖像跨瀏覽器不一致
- 11. 垂直對齊不在Safari瀏覽器和鉻
- 12. 垂直對齊圖像跨瀏覽器 - Firefox bug
- 13. 垂直對齊BoxLayout間距?
- 14. 瀏覽器上的網站對齊中斷縮放
- 15. 垂直對齊中間的div的div
- 16. bootstrap垂直對齊中間的內容
- 17. 垂直對齊div元素的中間
- 18. 對齊垂直中間的一個div
- 19. CSS垂直對齊LI的中間
- 20. 垂直對齊
- 21. 垂直對齊
- 22. 垂直對齊
- 23. 垂直對齊
- 24. 垂直對齊
- 25. 垂直對齊
- 26. 垂直對齊
- 27. 垂直對齊
- 28. 垂直對齊
- 29. LayoutPanel中的垂直對齊
- 30. JTextArea中的垂直對齊
可能重複( http://stackoverflow.com/questions/1909753/vertically-align-div-no-tables)以及成百上千人在這裏和互聯網。 – Rob 2012-02-02 14:46:27