天天看點

checkbox垂直對齊

今天項目中出現了一個checkbox不能對齊的問題,檢查良久,發現出現的原因是因為checkbox被設定了高度為24px導緻文字和checkbox不能對齊,做了幾次測試後總結如下:

1 checkbox 和radio兩個标簽的預設高寬都是13px,但是在Firefox和IE中 margin和padding的預設值不一樣,是以必須先統一設定margin和padding為0

2 checkbox 和radio如果被設定了高度,那麼高度越高,垂直居中的偏差就越大

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>垂直居中</title>
<style type="text/css">
label{height:13px;}
</style>
</head>

<body>
	<table >
    <tr>
    <td height="50px	">
    <input id="1" type="checkbox" style="margin:0px;padding:0px
" />
    <label for="1">預設高度垂直居中</label> 
    </td>
 </tr>
    <tr>
    <td height="50px	">
    <input id="1" type="checkbox" style="height:48px;margin:0px;padding:0px
" />
    <label for="1">設定高度垂直居中</label> 
    </td>
 </tr>
 </table>
</body>
</html>