아이폰 Safari에서 테스트를 하던 중 행간이 어긋나는 상황을 만나게 되었다. 정확히는 line-height
속성값이 적용되지 않은 듯한 문제다.
1
<p>1</p>
1
2
3
4
5
6
7
8
9
10
p {
display: inline-block;
width: 20px;
height: 20px;
border-radius: 50%;
border: 1px solid #333;
font-size: 14px;
line-height: 18px;
text-align: center;
}
See the Pen RwGjExB by sel (@selucky) on CodePen.
문제는 아래와 같다.
Safari에서 행간이 맞지 않아 텍스트가 위에 붙어 있는 것처럼 보인다. 그래서 기존 스타일은 그대로 두고 가상요소로 중앙 정렬을 맞춰보려 했었다.
1
2
3
4
5
6
p:before {
content: "";
display: inline-block;
height: 100%;
vertical-align: middle;
}
이 방법을 써도 똑같이 보인다.. 그래서 아래처럼 vertical-align
속성값을 수치로 잡아봤더니 해결됨.
1
2
3
4
5
6
p:before {
content: "";
display: inline-block;
height: 100%;
vertical-align: -0.25em;
}
Hero image from geralt