2009-12-16 97 views
0

我遇到了麻煩正確格式化CSS在IE中以我想要的方式顯示。它完美地顯示在Firefox中。我試圖讓它顯示標籤,然後在它旁邊有對齊的輸入或選擇框,並且尺寸完全相同,因此看上去均勻。我知道IE有黑客攻擊,但似乎沒有任何改變。下面是我在Firefox中使用的示例CSS和html代碼。任何幫助將是偉大的謝謝!IE CSS格式無標籤形式與標籤,輸入和選擇

* CSS

fieldset { 
    border: none; 
    padding: 10px; 
    width: 600px; 
    margin-top: 5px; 
} 

label { 
    width: 140px; 
    padding-left: 20px; 
    margin: 5px; 
    float: left; 
    text-align: left; 
} 

input { 
    margin: 5px; 
    padding 0px; 
    float: left; 
    vertical-align: middle; 
    display: inline; 
} 

select { 
    margin: 1px 0px; 
    padding: 2px; 
    float: left; 
    display: inline; 
    width: 149px; 
} 

br { 
    clear: left; 
} 

* HTML

<fieldset> 
    <label>First Name:</lable> 
    <input type="text" value="first_name" /><br > 

    <label>Last Name:</lable> 
    <input type="text" value="last_name" /><br >  

    <label>User Role:</lable> 
    <select> 
     <option value=""></option> 
     <option value="admin">Admin</option> 
     <option value="basic">Basic</option> 
    </select> 
</fieldset> 
+0

您的標籤結束標籤拼寫錯誤 –

+0

您發佈的示例代碼似乎無法呈現您在Firefox中描述的方式。對我來說,它是在輸入上方而不是旁邊輸入標籤。 – Rudism

+0

啊,是的,這是拼寫錯誤的標籤,導致它錯誤地呈現。 – Rudism

回答

2

解決您的標籤標籤,然後嘗試這個CSS代碼:

fieldset { 
     border: none; 
     padding: 10px; 
     width: 600px; 
     margin-top: 5px; 
    } 

    label { 
     width: 140px; 
     margin: 5px; 
     display: block; 
     float: left; 
    } 

    input, select { 
     width: 150px; 
     margin: 5px; 
     float: left; 
     display: block; 
    } 

    br { 
     clear: both; 
    } 

它爲我在IE,FF,Chrome瀏覽器和Safari。另外,您可能想嘗試使用ordered lists來設置表單元素的樣式。

+0

謝謝,那工作更好! – fiktionvt

+0

此外,只要你有有效的HTML,請確保你關閉你的br標籤,如
。 – ryanulit

+0

這是有效的XHTML,對於有效的HTML不是必需的 –