.net form 影響版面置中問題

No

程式端使用 .net 的案子之前接過兩次,基本上都沒什麼問題,這次遇到這樣的情況不確定是什麼因素誘發,但因為還是只在 IE 下才會發生,所以更懶得追究原因 (可能跟 sticky-footer 有關?),直接見招拆招。

prototype 下一切正常,但套進 asp 之後,server 端會在 底下自動生出一個 <form>,而原本用 margin 置中的版面就整個靠左了。

1
2
3
4
5
6
7
8
9
<body> 
    <form>
        <div id="wrapper">this is content</div> 
    </form> 
</body> 
 
#wrapper { 
    margin: 0 auto; width: 780px; 
}

IE Developer Toolbar 看不出原因何在,CSS 看起來都正常,但 #wrapper 就是不肯乖乖置中,最後只好放棄 #wrapper 改從 <form> 下手,給絕對位置後再置左負數來達到版面置中的效果:

1
2
3
4
5
6
7
8
9
10
body {
    position: relative; 
} 
 
#formid { 
    width: 780px; 
    position: absolute; 
    left: 50%; 
    margin-left: -390px; 
}

Thursday, April 9th, 2009

Category: CSS

Bookmark and Share