Chrome trên Android thay đổi kích thước phông chữ


84

Rõ ràng khi đoạn văn bản đạt đến một độ dài nhất định, Google Chrome trên Android quyết định thay đổi kích thước văn bản và làm cho nó lớn hơn (gây ra tất cả các loại thú vị). Bây giờ tôi có một trang web mà khoảng một nửa số thẻ p-tag theo kích thước tôi đã đặt và nửa còn lại thay đổi theo ý muốn - dường như tùy thuộc vào độ dài của đoạn văn.

Làm thế quái nào để tôi sửa lỗi này?


1
Bạn có một ví dụ? Ngoài ra, phiên bản Android và Chrome nào?
Junuxx

Câu trả lời:


93

Thêm max-height: 999999px;vào phần tử bạn muốn ngăn tăng cường phông chữ hoặc phần tử gốc của nó.


13
Android Chrome chỉ áp dụng tăng cường phông chữ cho các phần tử có chiều cao động. Ngay sau khi bạn chỉ định chiều cao hoặc chiều cao tối đa, tăng cường phông chữ sẽ không được áp dụng. Đặt chiều cao tối đa thành một số lớn rất đơn giản và không có tác dụng phụ.
moeffju

1
Chỉ là một cảnh báo cho điều này. Điều này đã giải quyết vấn đề tôi gặp phải với phông chữ Chrome trên Android không chơi đẹp. Tuy nhiên, nó đã phá vỡ chế độ xem ipad của trang web trên các phiên bản ios cụ thể.
James McDonnell

Cũng như nó gây ra một số vấn đề trên ipad cho quá trình chuyển đổi css3.
James McDonnell

4
Việc sử dụng điều này phá vỡ đáng kể bố cục của nhiều phần tử trong Safari (5.1.7), ngay cả khi bạn không sử dụng chiều cao tối đa hoặc chiều cao được xác định để bắt đầu. Một số trang web hoàn toàn không thể sử dụng được, tất cả các divyếu tố cấu trúc đã được thu gọn một cách khó hiểu lên đầu trang. Đừng "phủ sóng" trang web của bạn bằng định nghĩa chiều cao tối đa! Chỉ sử dụng khi cần thiết và kiểm tra kỹ lưỡng.
Radley Bền vững

2
Chà ... Ngay khi tôi nghĩ rằng tôi đã nhìn thấy tất cả ... Một trục trặc điên rồ khác với một sửa chữa điên rồ khác. FWIW Tôi không thấy bất kỳ sự cố nào trong Safari và min-height: 1pxrất tiếc là không ảnh hưởng gì. max-height: 999999pxthực hiện thủ thuật mặc dù. Trường hợp của tôi là nội dung chuyển đổi rất dài trong quá trình nhập / rời tuyến đường. Tăng cường phông chữ xảy ra trong hoặc ngay sau quá trình chuyển đổi, không chắc chắn là do đâu, nhưng nó gây ra một sự thay đổi rất đáng chú ý.
Đuổi theo

60

Bao gồm <meta>thẻ sau trong tài liệu <head>:

<meta name="viewport" content="width=device-width, initial-scale=1">

Điều này sẽ thiết lập khung xem một cách chính xác, và do đó loại bỏ sự cần thiết của "FontBoosting".


6
Đây chắc chắn là giải pháp được ưu tiên. Nếu bạn quan tâm đến cách mọi thứ trông như thế nào trong thiết bị di động, thì hãy sở hữu chế độ xem của bạn!
Paul Ailen

17
Tuy nhiên, điều này không vô hiệu hóa tính năng tăng cường phông chữ.
Ed Hinchliffe

1
Nó chắc chắn điều chỉnh tỷ lệ không mong muốn và tôi sẽ sử dụng nó trong tương lai.
Dizzley

5
Như một lưu ý, tôi có <meta name="viewport" content="width=device-width, initial-scale=0.5, user-scalable=no">và tôi vẫn nhận được Chromes nhân rộng khủng khiếp
Sam

Điều đó tốt hơn vì phông chữ dễ đọc. Nó duy trì tỷ lệ trong khi tăng kích thước để dễ đọc. Hoàn hảo cho tôi.
Jennifer Michelle

23

Bây giờ có một thuộc tính CSS mà bạn có thể đặt để kiểm soát điều này:

-webkit-text-size-adjust: none;
-moz-text-size-adjust: none;
-ms-text-size-adjust: none;

Xem https://developer.mozilla.org/en-US/docs/Web/CSS/text-size-adjust


text-size-Adjust: không có gì phù hợp với tôi trên android chrome mới nhất.
Stepan Yakovenko

Đây là giải pháp ưu tiên nếu bạn đang sử dụng gas được triển khai dưới dạng ứng dụng web.
jpp

Điều này không hiệu quả với tôi nhưng chiều cao tối đa thì có.
Radenko Zec

15

Đặt nó trong thiết lập lại của bạn. html * {max-height:1000000px;}


đã gây ra vấn đề với tôi vì chân dính, phải làm nội dung html * thay
Sabrina Leggett

Điều này hơi quá khích, trừ khi bạn đang thực sự gặp sự cố trong nhiều yếu tố không thể đoán trước. Nếu không thì tốt hơn là chỉ nhắm mục tiêu các yếu tố có vấn đề.
Đuổi theo

1
@Chase - trong trường hợp của tôi, chúng là các phần tử không thể đoán trước (động), vì vậy chúng tôi phải sử dụng một *cách tiếp cận. Điều đó nói rằng, tôi cho rằng đây là một trong những điều tối nghĩa mà bạn có thể sẽ quên và có thể gây ra vấn đề trong tương lai, vì vậy để bảo trì có lẽ tôi đã để nó *ngay cả khi vào thời điểm đó nó chỉ là một ít phần tử.
Ed Hinchliffe

Ngay sau khi tôi tìm thấy chủ đề này và nhận xét, tôi bắt đầu thấy các vấn đề bổ sung mà tôi nghi ngờ có liên quan đến tăng cường phông chữ. Vì vậy, đủ chắc chắn (ít nhất là bây giờ) có một * max-height...mã của tôi LOL
Chase vào

6

Sau một số thử nghiệm, quy tắc này đã giúp tôi ra ngoài. Phải được thêm vào phần tử chứa văn bản được tăng cường hoặc phần tử đó là cha mẹ tùy thuộc vào cấu trúc div / table.

element or parent element { 
    /* prevent font boosting on mobile devices */
    width: 100%;
    height: auto;
    min-height: 1px;
    max-height: 999999px;
}

Có thể các giá trị chiều rộng và chiều cao phải được sửa theo nhu cầu của bạn.


2

Tôi đã tìm thấy giải pháp cho các trang của mình: cung cấp cho phần tử mẹ chiều rộng và chiều cao! Phông chữ sẽ không đi ra ngoài những đường viền đó, và vì vậy nó sẽ vẫn nhỏ (er).


1

Điều này được gọi là "tăng cường phông chữ" và được mô tả một số chi tiết trong lỗi WebKit này . Hiện không có cách nào để tắt nó.


Có vẻ như nó thực sự là tăng cường phông chữ nhưng nó có thể được ngăn chặn bằng cách thiết lập max-height: 999999pxnhư @moeffju đã mô tả.
Đuổi theo
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.