問題を再現できます。正確な詳細については、私の回答の最後を参照してください。
次の方法でギャップを削除できます。
- に変わり
vertical-align: text-top
ますvertical-align: top
。
text-top
なんらかの理由 (なぜ? ) でどうしても必要でない限り、これは簡単な解決策です。
doctypetext-top
の上部に余分なスペースを追加する理由がわかりません。Transitional
このコード ( ) を使用して IE8 でテストするとXHTML 1.0 Transitional
、説明した問題が発生します。
<!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>Untitled Document</title>
<style type="text/css">
.field {
margin: 0px;
margin-top: 2px;
background: #ccc
}
label {
display: inline-block;
width: 5em;
margin-right: 0.5em;
}
textarea {
display: inline-block;
width: 22em;
vertical-align: text-top;
}
</style>
</head>
<body>
<div class="field">
<label>Info</label><textarea cols="40" rows="4"></textarea>
</div>
</body>
</html>
最初の行をこれに変更すると ( XHTML 1.0 Strict
)、それは起こりません:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">