Safari (iPhone)에서 일부 글꼴 크기가 더 크게 렌더링 됨


110

Safari / iPhone이 일부 글꼴 크기 설정을 무시하는 CSS 또는 다른 이유가 있습니까? 내 특정 웹 사이트에서 iPhone의 Safari는 font-size : 15px 텍스트보다 큰 font-size : 13px 텍스트를 렌더링합니다. 일부 요소에서 글꼴 크기를 지원하지 않을 수 있습니까?

답변:


248

Joe의 답변에는 몇 가지 좋은 모범 사례가 있지만 설명하는 문제는 Mobile Safari가 텍스트가 너무 작게 렌더링 될 것이라고 생각하면 자동으로 텍스트 크기를 조정한다는 사실에 집중되어 있다고 생각합니다. CSS 속성으로이 문제를 해결할 수 있습니다 -webkit-text-size-adjust. 다음은 iPhone에서만 이것을 신체에 적용하는 방법의 샘플입니다.

@media screen and (max-device-width: 480px){
  body{
    -webkit-text-size-adjust: none;
  }
}

2
이 문제가 발생했습니다. 이 작은 미디어 화면 해킹은 완벽하게 작동합니다. CSS 시작 파일에 통합하기 시작하겠습니다.
Throttlehead

1
와, 아프다! 나를 미치게 만들었고, 이것을 발견하기 전에 jQuery로 클래스 이름을 변경하고 CSS를 인라인으로 설정하려고 시도했습니다. 생명의 은인!
Christoffer Bubach

1
많은 도움이되었습니다. 건배 :)
Dead Man

2
미디어 쿼리를 사용해야합니다. 이것은 일부 텍스트를 읽기 어렵게 만드는 것 같습니다. -webkit-text-size-adjust : none에주의하십시오.
Gemmu

9
답변을 다음으로 업데이트해야합니다. -webkit-text-size-adjust: 100%이렇게하면 자동 업데이트가 방지되지만 사용자가 확대 / 축소를 시작할 수 있습니다. (출처)
Shawn Erquhart


11

또한 뷰포트 메타 태그에서 초기 확대 / 축소 설정을 1로 설정했는지 확인하십시오.

<meta name="viewport" content="width=device-width; initial-scale=1.0;" />

7

픽셀 정의는 더 이상 사용하지 않습니다. 픽셀 정의는 정말 혼란스럽고 시각적 서비스에서 정확히 동일하지 않기 때문입니다.

유닛 만나기

  1. "Ems"(em) : "em"은 웹 문서 미디어에서 사용되는 확장 가능한 단위입니다. em은 현재 글꼴 크기와 같습니다. 예를 들어 문서의 글꼴 크기가 12pt이면 1em은 12pt와 같습니다. Ems는 본질적으로 확장 가능하므로 2em은 24pt, .5em은 6pt 등입니다. 확장 성과 모바일 장치 친화적 인 특성으로 인해 Ems는 웹 문서에서 점점 인기를 얻고 있습니다.
  2. 픽셀 (px) : 픽셀은 화면 미디어에서 사용되는 고정 크기 단위입니다 (예 : 컴퓨터 화면에서 읽을 수 있음). 하나의 픽셀은 컴퓨터 화면의 하나의 점과 같습니다 (화면 해상도의 최소 분할). 많은 웹 디자이너는 웹 문서에서 픽셀 단위를 사용하여 사이트가 브라우저에서 렌더링 될 때 완벽한 픽셀 표현을 생성합니다. 픽셀 단위의 한 가지 문제점은 시각 장애가있는 독자의 경우 위로 확장하거나 모바일 장치에 맞게 아래로 확장하지 않는다는 것입니다.
  3. 포인트 (pt) : 포인트는 전통적으로 인쇄 매체 (종이에 인쇄되는 모든 것)에서 사용됩니다. 1 포인트는 1/72 인치와 같습니다. 포인트는 고정 된 크기 단위이며 크기를 조정할 수 없다는 점에서 픽셀과 매우 유사합니다.
  4. 백분율 (%) : 백분율 단위는 몇 가지 근본적인 차이점을 제외하고는 "em"단위와 매우 유사합니다. 무엇보다도 현재 글꼴 크기는 100 %입니다 (즉, 12pt = 100 %). 백분율 단위를 사용하는 동안 텍스트는 모바일 장치 및 접근성을 위해 완전히 확장 가능합니다.

4
대답은 텍스트에 대해 1 개의 미리 정의 된 단위 (예 : 12pt)를 사용한 다음 모든 후속 CSS 정의에 대해 font-size : 90 %를 사용하는 것입니다. 또는 글꼴 크기 : 110 %; 지원되는 모든 장치에서 더 쉽게 액세스 할 수 있습니다.

1
가장 중요한 REM (참조 EM)을 잊었습니다. 전체 문서에서 사용할 수 있으며 동일하게 유지됩니다 (계단식이 아님).
Andrew Swift

3
이 답변은 관련이 없으며 어떤 식으로도 질문에 답변하지 않습니다. 문제는 어떤 단위를 사용할 것인지가 아니라 다르게 렌더링되는 동일한 크기의 텍스트에 관한 것이 었습니다. 문제는 어떤 단위를 사용하든 실제로 거기에 남아 있습니다.
Rauli Rajande

0

나는 똑같은 문제가 있었고 원본 CSS에서 다음 줄이 있음이 밝혀졌습니다.

-webkit-text-size-adjust : 120 %;

100 %로 변경해야했고 모든 것이 순조로 웠습니다. 모든 px를 em 또는 %%로 변경할 필요가 없습니다.


디자이너는 어쨌든 글꼴 크기에 em을 사용해야합니다.
Nick Turner

2
... px 크기가 가장 좋은 body 태그 css는 예외입니다.
Matt Parkins 2013 년

0

또한 조작하는 요소에 "너비 / 높이"가 설정되어 있지 않은지 확인하십시오. Safari는 svg의 글꼴 크기보다 크기 조정 우선 순위를 제공하지만 현재는 Chrome 및 FF는 그렇지 않은 것 같습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.