2011-03-03 58 views
1

出於測試目的我有一個基本形式與在同一行上排列的三個輸入:IE8輸入CSS樣式和對準

「姓名」(類型=文本),「密碼」(類型=文本)和「提交」(type = submit)**。

這樣的:

<body> 
<form> 
<input type="submit" class="search" value="log in"/> 
<input type="text" value="username"/> 
<input type="text" value="username"/> 
</form> 
</body> 

如果我去測試在IE8切換兼容性視圖按鈕我有我的形式下移位,正確的,我也注意到了填充更改即使我申請重置CSS像這樣:

<style> 
html, body, span,a, applet, object, iframe, h1, h2, h3, h4, h5,div, h6, p, blockquote, pre, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th,input, td {border: 0 none;margin: 0;padding: 0; 

一個人怎麼能做到有形式穩定在相同的位置,所有這三個輸入對齊,並且在切換兼容性視圖按鈕時填充相同?

感謝

盧卡

+0

您可以顯示相關的CSS? – roryf

+0

你爲什麼要這樣?你寫你的網站爲一個「模式」。當您的網站不需要它時,爲什麼訪問者會切換到兼容模式? – RoToRa

+0

我沒有任何我只是有這個表格的裸文件用於測試目的和我發佈的CSS是我所有的 – luca

回答

0

發現自己的答案給予高度和定位輸入類型=提交絕對.. 這是一個變通

0

設置一個DOCTYPE HTML頁面上是這樣的:

<!DOCTYPE html> 

爲HTML文檔

+0

<!DOCTYPE html PUBLIC「 - // W3C // DTD XHTML 1.0 Transitional // EN」「http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd」> ...這是對??你什麼意思?? – luca

+0

只要你有一個有效的文檔類型,ie的渲染引擎的不同版本應該表現得相似。大多數情況下,使用我上面寫過的簡單文檔類型(html5文檔類型完全向後兼容)已經足夠了 –

+0

問題仍然存在=( – luca

1

在第一線,我從一個很遠有CSS和網頁設計專家,但我目前正在努力更新一個Web應用程序,在IE 7開發和測試後主要使用Chrome和IE 8.

我一直在IE 8中使用兼容模式來測試IE 7中的頁面佈局;從安裝有IE 7的虛擬機進行粗略測試,兼容性模式呈現爲IE 7的頁面,並且它報告自己是IE 7.

據我所知,問題在於IE 7只是呈現輸入按鈕比IE 8高。見沒有CSS這裏一個例子:http://jsfiddle.net/zHpX8/4/

如果你添加一個樣式明確設定輸入的高度,那麼它似乎呈現相同的兩個常規模式和兼容模式:http://jsfiddle.net/zHpX8/6/

不是一個理想的答案,我希望有更多知識的人能夠提供更好的知識,因爲我也可以使用它。目前,對於這樣的小事情,如果它不是太糟糕,我只能忍受它,但對於我找不到共同點的少數案例,我有一個專門針對IE 7的樣式表,以及一個針對所有其他類型的樣式表瀏覽器。

我希望IE 7會走開已經...

+0

以及您是如何爲按鈕選擇正確的高度?只需通過測試 - 檢查? – luca

+0

http://jsfiddle.net/zHpX8/7/現在沒有渲染相同.. – luca

+0

@luca,是的試驗和錯誤,我明白你的意思。它看起來像IE 8垂直中心和IE 7對齊他們在底部,在這一點上,我會開始嘗試使用邊距和/或填充來試着明確排列內容,這是一種痛苦 –