line-height, vertical-align メソッドを使用して、画像を div 内の中央に配置しようとしています。例、ここでの質問、およびその他の修正を見ると、それらはすべて提案し、これが機能することを示しています。しかし、それは私にとってはうまくいきません。
基本構造
<div class="photo_container">
<img alt="" src="photos/1.jpg" class="thumbnail" />
</div>
CSS
div.photo_container
{
width: 160px;
height: 160px;
padding: 10px;
float: left;
margin-right: 10px;
margin-bottom: 10px;
background-color: White;
box-shadow: 0px 0px 5px #AAA;
text-align: center;
line-height: 160px;
}
img.thumbnail
{
vertical-align: middle;
}
基本的に、ご覧のようにコンテナーは常に 160 ピクセルの高さですが、内部の画像は高さ 100 ピクセル程度になる可能性があります。この場合、コンテナーの上部と下部に 30 ピクセルの間隔を置き、画像を中央に垂直に配置する必要があります。
私は何が欠けていますか?
答えた
それはDOCTYPEの問題であることが判明しました。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
HTML 5 doctype を使用する必要があった場合
<!DOCTYPE html>