을 사용할 수 있으며 거기에 line-height: 50px;
필요하지 않습니다 vertical-align: middle;
.
데모
여러 라인을했습니다 경우 위 그래서 경우에 당신이 사용하여 텍스트 줄 바꿈 수, 실패 span
사용보다와 display: table-cell;
와 display: table;
와 함께 vertical-align: middle;
, 또한 사용하는 것을 잊지 마세요 width: 100%;
에 대한#abc
데모
#abc{
font:Verdana, Geneva, sans-serif;
font-size:18px;
text-align:left;
background-color:#0F0;
height:50px;
display: table;
width: 100%;
}
#abc span {
vertical-align:middle;
display: table-cell;
}
내가 여기 생각할 수있는 또 다른 해결책은 사용하는 transform
부동산의 translateY()
경우 Y
분명히 Y 축 의미합니다. 그것은 ... 꽤 똑바로 앞으로 당신이 요소에 대한 위치 설정하기 만의 absolute
이상 위치 50%
로부터 top
음의와 그것의 축에서 번역-50%
div {
height: 100px;
width: 100px;
background-color: tomato;
position: relative;
}
p {
position: absolute;
top: 50%;
transform: translateY(-50%);
}
데모
IE8과 같은 이전 브라우저에서는 지원되지 않지만, 각각 -ms, -moz
및 -webkit
접두사 를 사용하여 IE9 및 기타 이전 브라우저 버전의 Chrome 및 Firefox를 만들 수 있습니다 .
에 대한 자세한 내용 transform
은 여기 를 참조 하십시오 .