進入eYou.com後,馬上就將新版的郵件介面轉換成XHTML+CSS的工作,還好平時基本功還夠紮實,有條不紊的干了下來。當然會遇到新的問題,例如,平常做網頁,因為沒有跟程式打過什麼交道,較少使用表單。還好,世界還有Google,讓我可以輕鬆應付新挑戰。一些經驗,寫出來大家分享。
基於易用性(accesibility)的考慮,表單的標準寫法應該在<form>和</form>之中包含fieldset和legend(說明),讓使用者明白該表單域的內容概要。簡單的結構如下:
以下為引用的內容: <form> <fieldset> <legend></legend> ..... </fieldset> </form> |
在某些場合或許你不願意讓也許fieldset和legend影響你的設計方案中的美觀,好辦,在CSS中把fieldset的border設定為0,legend的display設定為none就行了。
在絕大多數情況下,表單的佈局分成兩列,左邊是標記(label),右邊是輸入框(input type="text"...)。如此簡單的兩列佈局,我強烈建議不要使用表格。參考http://stylephreak.frogrun.com/uploads/source/cssform.php和http://www.aplus.co.yu/css/forms/?css=1(絕對有價值的兩個參考,你已經我可以不必往下看了),我們發現,Web標準通用的解決方法是,為label和input type="text"...的外圍加上一個div,並把把該div的display設定為block。把label設為float: left;(這也是要把div設定為display: block;的原因)之後就可以讓標記跟輸入框同一行上了。讓label 對齊的一個小技巧是,固定label的寬度,然後根據需要使用text-align向左或向右對齊。設定寬度的小技巧是,使用單位em根據標記的最大字數來定寬度,不必辛苦測試px。
為了讓我的闡述更容易理解,我簡單寫一些程式碼:
以下為引用的內容: XHTML:(部分) <form> body {/*跟表單無關,設定頁面的顯示效果*/ |